Создать новый пустой файл из командной строки Linux с такими же правами и владельцем? - PullRequest
10 голосов
/ 15 ноября 2011

Мне нужно создать новый пустой файл с теми же правами и владельцем (группа и пользователь), что и у источника, примерно так, как работает cp -p FILE1 FILE1.bak, но без фактического копирования содержимого.

Я знаю, что позже могу очистить содержимое, но это кажется расточительным.

Я не могу использовать скрипт - решение должно запускаться непосредственно из командной строки.

Ответы [ 4 ]

25 голосов
/ 15 ноября 2011
touch newfile
chmod `stat -c %a originalfile` newfile
chown `stat -c %U originalfile`:`stat -c %G originalfile` newfile
8 голосов
/ 15 ноября 2011

Использование

touch newfile
chmod --reference=oldfile newfile
chown --reference=oldfile newfile
3 голосов
/ 15 ноября 2011
cp --attributes-only --preserve=ownership
2 голосов
/ 15 ноября 2011

Используйте сенсорную команду.

http://www.computerhope.com/unix/utouch.htm

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...