Puede eliminar múltiples procesos con una matriz. En este caso, puede especificar opciones como $ip
, $hostname
o algo similar.
ip=your_ip_address; declare -a arr=$(ps aux|grep tail|grep $ip|awk '{print $2}'); for pid in ${arr[@]}; do kill -9 $pid; done;
Для этого конкретного формата вывода вы можете:
awk '{print substr(FILENAME, 3)" \""$0"\" "}'./file*
Который будет печатать имя файла, за которым следует содержимое строки в кавычках для каждой строки файла.
Мы добавляем префикс ./
, который мы удаляем с помощью substr()
, чтобы обойти проблему, связанную с тем, что awk
рассматривает аргументы, подобные filex=y.txt
, как назначение переменной вместо имени файла.
Если файлы уже содержат символы "
и вы хотите отобразить их как\"
(и \
как \\
, чтобы устранить двусмысленность):
awk '{gsub(/[\\"]/, "\\\\&"); print substr(FILENAME, 3)" \""$0"\" "}'./file*
(, который не содержит адреса "
в самом имени файла ).
Это помогает:
for f1 in *; do echo -n "$f1"" "\"; cat "$f1"; echo "\""; done
Он перебирает все файлы в каталоге, затем для каждого файла показывает его имя, за которым следует его содержимое в кавычках.
Предположим, что файлы являются текстовыми и не слишком большими (, т.е. менее 10000 строк ).
Тогда вы можете попробовать использовать head (1)(возможно как head -vn -0 file*
с GNU head )вот так
head -10000 file1 file2 file3
Помните, что некоторые файлы являются бинарными, то есть содержат что-то еще, кроме текста. Например, дамп ядра , файл базы данных sqlite , изображение PNG , исполняемый файл или даже какой-нибудь Файл OpenDocument , созданный с помощью LibreOffice. В таких файлах использованиеhead
(или cat (1))не дает хороших результатов, поскольку они не являются текстовыми файлами , а содержат последовательность почти произвольных байтов.
Вас также может заинтересовать команда файл (1 ). Он пытается угадать тип содержимого данного файла. Читайте также о типах мультимедиа(или типах MIME )
.Помните, что в Unix-подобной системе файл на самом деле является i -узлом и может иметь несколько имен (см. inode (7)], ссылка (2 ), пер (1)подробнее ). Имя файла мало что значит. Файл в основном представляет собой последовательность байтов с каким-то способом назвать его. Как эта последовательность используется, зависит от программы, обращающейся к файлу.
Вас может заинтересовать xdg-open
, который пытается графически показать различные типы файлов, (он адаптируется к содержимому этих файлов ).
Читайте также о подстановке . См. глобус (7). Возможно, узнайте о for
встроенной в оболочке . Читайте оbash
конструкциях циклов .