как взять имена файлов от папки

chmod u+s /usr/bin/growisofs solves this problem.

Но это хороший пример «неправильного способа сделать это», поскольку он нарушает безопасность, предоставляемую через sudo . SETUID BROWISOFS [1190189] представляет еще худшую проблему безопасности, чем тщательно настройку Sudo , и это все не имеет значения для личной системы настольных компьютеров, IMO.

-2
12.08.2014, 08:31
2 ответа

Для получения имени файла из полного пути можно использовать basename:

$ basename /home/cuonglm/test.pl 
test.pl

Так что можно сделать что-то вроде:

for f in *; do
  filename="$(basename -- "$f")"
  # Do sftuff here
done
1
28.01.2020, 05:17

Ваш вопрос неясен. Я предполагаю, что вы хотите, чтобы имя файла назначения было временем модификации файла, и вас не волнует оригинальное имя файла. Пожалуйста, поправьте меня, если это неправильно.

Бэш-скрипт. Использование: ./script.sh original_dir dest_dir

#!/bin/bash
find "$1" -maxdepth 1 -exec bash -c '
echo "$1"
export LANG=C
name=$(stat -c "%y" . | sed -r  "s/..(..)-(..)-(..).*/\3-\2-\1/")
mv -iT $0 '"$1"'/"$name"' "{}" \;
0
28.01.2020, 05:17

Теги

Похожие вопросы