Как я могу передать вывод команды cat / ls -l аргументу в unix? - PullRequest
0 голосов
/ 06 ноября 2018

У меня есть задание, которое говорит: «Если вы введете« type », оно должно ответить на запрос« Введите имя файла: », а затем попросить вас ввести что-то еще. Если вы введете правильное имя файла, оно должно ответьте со списком файла и выйдите. "

Вот код, который у меня есть:

type)
 echo "Enter file name:"
read var
if [ -f "${var}" ]; 
then
     ???
exit
fi
;; 

Я пытаюсь выяснить, что войти, куда я положил ??? чтобы отобразить содержимое любого файла, введенного так же, как и команда cat. Я думал, что это будет что-то простое, как echo $ CAT, но это не сработало.

И затем я пытаюсь сделать то же самое, но с каталогом, выводя список ls -l, а не содержимое файла.

Помощь будет оценена!

1 Ответ

0 голосов
/ 07 ноября 2018

Вы можете сделать что-то вроде этого:

if [ -f "$var" ] 
then
     cat "$var"
elif [ -d "$var" ]
then
    ls -l "$var"
fi
...