Также можно использовать команду find
:
find `pwd` -name '*info*' -type f
Remove -type f
, которая ограничивает список только файлами, если также требуется включить каталоги.
-121--174239-
Во второй ссылке, где говорится
, распределитель памяти получает большой объем памяти (скажем, 4 страницы или 4 * 4 KiB) и делит его на гораздо меньшие фрагменты
«распределитель памяти» - это не ядро, а процедуры libc, такие как malloc.
Ядро выделяет памяти процессу в фрагментах размера страницы. malloc отслеживает используемые и неиспользуемые части этих страниц по запросу приложения и освобождает их.
-121--97600-
Lynx имеет два набора ключевых привязок:
k
(или K
) (см. документация ). ^ Xe
( control X e ) запускает редактор в выбранном текстовом поле. Вы можете заметить в списке от k
, что он связан с KEYMAP
. Аналогичным образом можно настроить Lynx для привязки ключа к списку EDITMAP
, показывая используемые привязки.
Обратите внимание, что это загорится, если какое-либо из имен файлов содержит ,
или /
в них:
$ awk -F "[/,]" -v OFS="," 'BEGIN { print "LB", "-PROJ--", "FILENAME----", "USER--", "DATA-----", "TIME---", "STATUS" }NR!=1{print $4,$5,$7,$8,$9"/"$10"/"$11,$12,$13}' input
LB,-PROJ--,FILENAME----,USER--,DATA-----,TIME---,STATUS
app,app_pit,HUB_TEST.apx,uJones,4/24/2018,5:55:58,OK
app,app_pit,test_acqit1.apx,uSmith,3/8/2018,10:16:41,OK
app,app_pit,test_bkfs.apx,uHarry,/26/2018,9:47:03,OK
Игнорирование заголовка и предположение, что текст в файле не имеет пробелов в начале строки (в вашем вопросе):
$ sed -e 's@/Proj/abc/\([^/]*\)/\([^/]*\)/conf/@\1,\2,@' file
-------------PATH AND FILE NAME--------,USER--,DATE-----,TIME---,STATUS
app,app_pit,HUB_TEST.apx,uJones,4/24/2018,5:55:58,OK
app,app_pit,test_acqit1.apx,uSmith,3/8/2018,10:16:41,OK
app,app_pit,test_bkfs.apx,uHarry,/26/2018,9:47:03,OK
Команда sed
захватывает строки app
и app_pit
(, которые, как я предполагаю, могут различаться ), и заменяет путь в исходных данных этими запятыми в -между ними, оставляя последний бит пути как собственное поле.
Перенаправьте это в новый файл, а затем исправьте заголовок (, если необходимо ).
Awk
решение:
awk 'BEGIN{ FS = OFS = "," }
NR == 1{ $1 = "LB,-PROJ---,FILENAME----" }
NR > 1{
gsub("/(Proj/abc/|conf)", "", $1);
gsub("/", ",", $1)
}1' file
Выход:
LB,-PROJ---,FILENAME----,USER--,DATE-----,TIME---,STATUS
app,app_pit,HUB_TEST.apx,uJones,4/24/2018,5:55:58,OK
app,app_pit,test_acqit1.apx,uSmith,3/8/2018,10:16:41,OK
app,app_pit,test_bkfs.apx,uHarry,/26/2018,9:47:03,OK
sed -e 's|-------------PATH AND FILE NAME--------,USER--,DATE-----,TIME---,STATUS|LB,-PROJ---,FILENAME----,USER--,DATE-----,TIME---,STATUS|' -e 's|/Proj/abc/||g' -e 's|/conf||g' -e 's|/|,|2' -e 's|/|,|1' file
Просто расширенный набор замен потока.
Первая изменяет первую строку так, чтобы она начиналась со строки, начинающейся с LB
, которую вы хотите.
Второй удаляет /Proj/abc/.
Третий удаляет /conf.
Четвертая и пятая заменяют 2-ю и 1-ю косую черту запятыми.
Выход:
LB,-PROJ---,FILENAME----,USER--,DATE-----,TIME---,STATUS
app,app_pit,HUB_TEST.apx,uJones,4/24/2018,5:55:58,OK
app,app_pit,test_acqit1.apx,uSmith,3/8/2018,10:16:41,OK
app,app_pit,test_bkfs.apx,uHarry,/26/2018,9:47:03,OK
РЕШЕНО!
sed -e 's|-------------PATH AND FILE NAME--------,USER--,DATE-----,TIME---,STATUS|LB,-PROJ---,FILENAME----,USER--,DATE-----,TIME---,STATUS|' -e 's|/Proj/abc/||g' -e 's|/conf||g' -e 's|/|,|2' -e 's|/|,|1' file
Спасибо, Насир Райли, ваше решение sed сработало безупречно!!