Передача вывода команды другой команде в одной строке [дубликат]

Файловая система только для чтения - это файловая система, которая была смонтирована только для чтения или которая из-за неправильного завершения работы требует ремонта. Linux делает это автоматически для файловых систем, когда обнаруживает некоторую несогласованность, которую администратор должен исправить вручную (возможное повреждение данных файловой системы). Запустите fsck (1) в этой файловой системе, чтобы увидеть, нужно ли что-то исправить. Если файловая система смонтирована только для чтения, даже пользователь root не может изменять файлы в ней.

1
16.07.2017, 12:51
2 ответа

Вы всегда можете использовать замену команды -, как предлагает другой ответ, или использовать xargs, чтобы использовать то, что дает канал:

$ date '+screenshot-%y%m%d-%H%M%S.png' | xargs -I {} import  {}                                                              

$ ls screenshot-*                                                                                                            
screenshot-170716-042853.png
1
27.01.2020, 23:33

поскольку importпримет имя .pngв качестве аргумента, сконструируйте его и вызовите import. Думайте, что сначала $()будет заменой, а затем будет передан в качестве аргумента вimport

import $(date +'screenshot-%Y%m%d-%H%M%S.png')

например, с set -xvи echoвключить

$ echo $(date +'screenshot-%Y%m%d-%H%M%S.png')
echo $(date +'screenshot-%Y%m%d-%H%M%S.png')
++ date +screenshot-%Y%m%d-%H%M%S.png
+ echo screenshot-20170716-131720.png
screenshot-20170716-131720.png
1
27.01.2020, 23:33

Теги

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