Я учил себя командной строке Linux через PDF-книгу, и после того, как автор объясняет, как использовать cat
и >
для создания текстового файла, он говорит:
] Мы видим, что результат такой же, как и передача одного аргумента имени файла.
и я действительно не знаю, что он имеет в виду, несмотря на то, что я не пропустил ни одной части книги. Он просто говорит о вводе аргументов в терминале? Если это так, я все еще не знаю, что он имеет в виду.
вот весь абзац:
Используя оператор перенаправления «<», мы меняем источник стандартного ввода с клавиатуры на файл lazy_dog.txt. Мы видим, что результат такой же, как передача одного аргумента имени файла. Это не особенно полезно по сравнению с передачей аргумента имени файла, но служит для демонстрации использования файла в качестве источника стандартного ввода.
"Передача аргумента" означает добавлять параметр после определенной команды. Программа, запущенная той командой, будет вести себя, следовательно.
Как пример, команда "CP" используется для копирования файла и требует двух аргументов. Во-первых ИСХОДНЫЙ ФАЙЛ и во-вторых ЦЕЛЕВОЙ ФАЙЛ (или целевой каталог). Заметьте, что порядок синтаксиса очень важен здесь.
cp <SOURCE FILE> <DESTINATION FILE>
Давайте предположим, что Вы хотите скопировать "file.txt" в "copy_of_file.txt". Необходимо выполнить команду:
cp file.txt copy_of_file.txt
Это создаст новый файл в том же каталоге (каталог, из которого Вы выполнили команду, где исходный файл "file.txt" должен быть),
И ИСХОДНЫЙ ФАЙЛ и ЦЕЛЕВОЙ ФАЙЛ являются аргументами, переданными команде "CP".
Если Вы хотите знать, в какой или каком количестве аргументов команда нуждается, или какие optionals аргументы она принимает, можно сделать:
<command> --help
например:
cp --help
или
cat --help
Это отобразится, "Как использовать Вашу команду" в Ваш терминал.
Давайте смотреть на команду кошки. Если Вы выполняете кошку с отдельным аргументом, скажем, текстовый файл:
cat my_file.txt
Это отобразит содержание того файла на терминале.
При выполнении кошки с двумя аргументами она отобразит содержание обоих файлов:
cat my_first_file.txt my_second_file.txt
Теперь,> (оператор перенаправления) выглядит немного более сложным, но это на самом деле очень просто.
Это - перенаправление. Необходимо посмотреть на все что дисплеи терминала как вывод от команды. Вывод обычно переходит к терминалу. Если Вы работаете:
cat my_file.txt
Команда является 'кошкой', аргументом является "my_file", и вывод является содержанием того файла. Вывод переходит к терминалу. Ну, когда Вы используете оператор перенаправления">", который требует аргумента, что Вы на самом деле делаете перенаправляет вывод другому месту назначения. Так, что происходит, когда Вы работаете
cat my_file.txt > new_file.txt
это вместо того, чтобы отобразить содержание файла в Ваш терминал, это будет записано в файл, "new_file.txt".
Так в основном, результат
cat my_file.txt > copy.txt
и
cp my_file.txt > copy.txt
то же: Вы создаете новый текстовый файл с содержанием другого. Но процесс очень отличается.
Одна последняя вещь:
> file.txt
в то время как создают пустой файл (Вы... ничего не перенаправляете к file.txt, таким образом, это пусто. Довольно очевидный не так ли?)
Без большего количества контекста я не уверен, что средства авторов, но я надеюсь, что это помогает. Удача в изучении Unix, это немного твердо для начала, но это заканчивается большой забавой.
Я почти забыл отвечать:
"передача аргумента имени файла" означает передавать аргумент, и тем аргументом должно быть имя файла, таким образом, название файла, скажем, "file.txt". Это мог также быть полный путь в файл, что-то как:
/home/user/Documents/file.txt
unable to locate package
– Yan King Yin 5 April 2018 в 02:40