Вывести как ps, так и Date в одной строке, в файл?

Я строю рудиментарный скрипт регистрации и хочу записать вывод ps up 12345

Пока у меня есть:

 DATE2=`date +%Y-%m-%d:%H:%M:%S` echo ${DATE2} >> $filename ps up 12345 --no-headers >> $filename 

Это дает мне информацию, которую я хочу, но на трех строках (1 = дата, 2 = вывод ps 3 = пустая строка)

Однако, в идеале, я хотел бы зафиксировать их на одной линии. Есть ли способ их комбинировать (и игнорировать пустую строку)?

2 Solutions collect form web for “Вывести как ps, так и Date в одной строке, в файл?”

Вы также можете сохранить вывод ps в переменной и записать его с помощью одного эха или printf.

 DATE2=`date +%Y-%m-%d:%H:%M:%S` PS_RESULT=`ps up 12345 --no-headers` printf "%s: %s" "${DATE2}" "${PS_RESULT}" >> $filename 

Обратите внимание, что было бы полезно привыкнуть к $(command) вместо `command` когда вы сможете ее использовать, так как этот синтаксис может быть вложенным.

Одним из решений является не печатать новую строку в конце первой строки. Вместо этого вам, скорее всего, понадобится место.

 echo -n "${DATE2} " >>"$filename" 
  • Как извлечь пару значений ключа из команды ps
  • Как перечислить все запущенные X-приложения?
  • grep случайно появляется и исчезает в ps aux (ps aux | grep python)
  • несколько eps до ps
  • Как получить название медиа, воспроизводимого в VLC или других медиаплеерах с использованием CLI?
  • ps переключает для отображения PID, PPID, PGID и SID в совокупности
  • Разница между poll_s и ep_poll WCHAN в выпуске ps
  • Преобразуйте ps в pdf с помощью ps2pdf, но файл pdf не очень хорош
  • Как узнать общее использование ресурсов памяти с помощью ps?
  • Поле TIME в ps -ef
  • список графических процессов из терминала
  • Linux и Unix - лучшая ОС в мире.