Вы переместили ваш /var/www/folder в ../../, но что это значит?
. и .. - специальные записи, которые есть в каждом каталоге. [F5] ссылается на этот каталог, а .. ссылается на родительский каталог.
Таким образом, ../../ - относительный путь, указывающий на каталог «большой родительский» каталог рабочего каталога, то есть каталог уровней выше вашего текущего.
Итак, когда вы запустили указанную команду mv изнутри /etc/apache2/sites-available, вы переместили другую папку в каталог на два уровня выше, чем /etc .
Используя Perl, вы можете получить шаблон, присоединиться к нему и распечатать его для всех желаемых файлов:
perl -0nE 'say join(",",/(foo\d+=\w+)/g)' ex* > out
Это позволит избежать вашего внешнего цикла
Вот еще один однострочный:
echo $(cmd param | grep 'foo1\|foo5\|foo7') | sed 's/ /, /g' | tee -a output.csv
Команда: echo $(cmd param | grep 'foo1\|foo5\|foo7') будет печатать вывод в линейной форме.
Это ставит запятую между переменными: sed 's/ /, /g'
Это добавляет вывод в новую строку в конце файла: tee -a output.csv
Будет ли это работать для вас:
cmd param | grep 'foo1\|foo5\|foo7' | tr '\n' ',' | sed 's/,$//'
tr '\n' ',' заменить каждую строку return на «,» sed 's/,$//' удалить последний символ, если это «,» И если вы хотите поместить его в файл csv, вы можете добавить '\ n' в конец строки, а затем перенаправить его в файл csv:
cmd param | grep 'foo1\|foo5\|foo7' | tr '\n' ',' | sed 's/,\?$/\n/' >> file.csv
tr '\n' ',' замените каждую строку return на «,» >>, чтобы добавить в конец вашего файла csv, не удаляя то, что уже находится внутри Используя Perl, вы можете получить шаблон, присоединиться к нему и распечатать его для всех желаемых файлов:
perl -0nE 'say join(",",/(foo\d+=\w+)/g)' ex* > out
Это позволит избежать вашего внешнего цикла
Вот еще один однострочный:
echo $(cmd param | grep 'foo1\|foo5\|foo7') | sed 's/ /, /g' | tee -a output.csv
Команда: echo $(cmd param | grep 'foo1\|foo5\|foo7') будет печатать вывод в линейной форме.
Это ставит запятую между переменными: sed 's/ /, /g'
Это добавляет вывод в новую строку в конце файла: tee -a output.csv
Будет ли это работать для вас:
cmd param | grep 'foo1\|foo5\|foo7' | tr '\n' ',' | sed 's/,$//'
tr '\n' ',' заменить каждую строку return на «,» sed 's/,$//' удалить последний символ, если это «,» И если вы хотите поместить его в файл csv, вы можете добавить '\ n' в конец строки, а затем перенаправить его в файл csv:
cmd param | grep 'foo1\|foo5\|foo7' | tr '\n' ',' | sed 's/,\?$/\n/' >> file.csv
tr '\n' ',' замените каждую строку return на «,» >>, чтобы добавить в конец вашего файла csv, не удаляя то, что уже находится внутри