Я могу воспроизвести это в обычном сеансе GNOME (без запуска Compiz). К сожалению, я не думаю, что можно отключить эти границы предварительного просмотра (я просматривал исходный код Metacity и не мог найти ничего подходящего).
Самое простое решение - добавить временную метку к имени файла, а не использовать одну цифру.
Самый простой способ создать пустой файл - touch test$(date +%Y%m%d-%H%M%S), и это приведет к тому, что файл с именем [F2]. Второй раз test* получит более новую метку времени, поэтому она приведет к 2 файлам.
Я сомневаюсь, что существует общая команда, но вы можете думать о чем-то вроде этого:
create() {
read prefix number suffix < <(sed -r 's/(.*)([0-9]+)\.(.*)$/\1 \2 \3/' <<<"$1")
while true; do
file="$prefix$number.$suffix"
if [[ -e "$file" ]]; then
((number++))
else
touch "$file"
break
fi
done
}
Входной параметр функции разбивается на префикс, номер, суффикс, затем до файл существует, число увеличивается. Найден свободный слот, файл создается с помощью touch.
Механизм разделения должен быть адаптирован к вашим потребностям, и необходимо добавить различные проверки ошибок.
Если порядковые номера не требуются, то самый простой способ - использовать команду mktemp.
Я сомневаюсь, что существует общая команда, но вы можете думать о чем-то вроде этого:
create() {
read prefix number suffix < <(sed -r 's/(.*)([0-9]+)\.(.*)$/\1 \2 \3/' <<<"$1")
while true; do
file="$prefix$number.$suffix"
if [[ -e "$file" ]]; then
((number++))
else
touch "$file"
break
fi
done
}
Входной параметр функции делится на префикс, номер, суффикс, затем до файл существует, число увеличивается. Найден свободный слот, файл создается с помощью touch
.
Механизм разделения должен быть адаптирован к вашим потребностям, и необходимо добавить различные проверки ошибок.
Если порядковые номера не требуются, то самым простым способом является использование команды mktemp
.
Я сомневаюсь, что для этого существует общая команда, но вы можете думать о чем-то вроде этого:
create() {
read prefix number suffix < <(sed -r 's/(.*)([0-9]+)\.(.*)$/\1 \2 \3/' <<<"$1")
while true; do
file="$prefix$number.$suffix"
if [[ -e "$file" ]]; then
((number++))
else
touch "$file"
break
fi
done
}
Входной параметр функции делится на префикс, номер, суффикс, затем до файл существует, число увеличивается. Найден свободный слот, файл создается с помощью touch
.
Механизм разделения должен быть адаптирован к вашим потребностям, и необходимо добавить различные проверки ошибок.
Я сомневаюсь, что существует общая команда, но вы можете думать о чем-то вроде этого:
create() {
read prefix number suffix < <(sed -r 's/(.*)([0-9]+)\.(.*)$/\1 \2 \3/' <<<"$1")
while true; do
file="$prefix$number.$suffix"
if [[ -e "$file" ]]; then
((number++))
else
touch "$file"
break
fi
done
}
Входной параметр функции делится на префикс, номер, суффикс, затем до файл существует, число увеличивается. Найден свободный слот, файл создается с помощью touch
.
Механизм разделения должен быть адаптирован к вашим потребностям, и необходимо добавить различные проверки ошибок.
Если порядковые номера не требуются, то самым простым способом является использование команды mktemp
.
Если порядковые номера не требуются, то самым простым способом является использование команды mktemp
.
TMPFILE=$(mktemp /tmp/example.XXXXXXXXXX) || exit 1 echo "program output" >> $TMPFILE
– bgvaughan
8 August 2011 в 05:08
TMPFILE='/tmp/tmp.$$'; touch $TMPFILE
– bgvaughan
8 August 2011 в 05:15