Me he estado enseñando a mí mismo la línea de comandos de Linux a través de un libro en formato PDF, y después de que el autor explica cómo usar cat
y >
crear un archivo de texto, dice:
Vemos que el resultado es el mismo que pasar un único argumento de nombre de archivo.
y realmente no sé lo que quiere decir, a pesar de que no me he saltado ninguna parte del libro. ¿Está simplemente hablando de introducir argumentos en la terminal? Si este es el caso, todavía no sé a qué se refiere.
EDITAR
Aquí está el párrafo completo:
Usando el operador de redirección “<”, cambiamos la fuente de entrada estándar del teclado al archivo lazy_dog.txt. Vemos que el resultado es el mismo que pasar un único argumento de nombre de archivo. Esto no es particularmente útil en comparación con pasar un argumento de nombre de archivo, pero sirve para demostrar el uso de un archivo como fuente de entrada estándar.
Respuesta1
Pasarás (argumentos)
"Pasar un argumento" significa agregar un parámetro después de un comando específico. El programa iniciado por ese comando se comportará en consecuencia.
Como ejemplo, el comando "CP" se utiliza para copiar un archivo y requiere dos argumentos. En primer lugar, elARCHIVO FUENTEy en segundo lugar elARCHIVO DE DESTINO (o directorio de destino). Tenga en cuenta que el orden de la sintaxis es muy importante aquí.
cp <SOURCE FILE> <DESTINATION FILE>
Supongamos que desea copiar "archivo.txt" a "copia_de_archivo.txt". Tienes que ejecutar el comando:
cp file.txt copy_of_file.txt
Creará un nuevo archivo, en el mismo directorio (el directorio desde el que ejecutó el comando, donde se encuentra el archivo fuente "archivo.txt" debiera ser)
AmbosARCHIVO FUENTEyARCHIVO DE DESTINOson argumentos pasados al comando "cp".
Necesito ayuda ?
Si desea saber qué o cuántos argumentos necesita un comando, o qué argumentos opcionales acepta, puede hacer:
<command> --help
Por ejemplo:
cp --help
o
cat --help
Mostrará "Cómo usar su comando" en su terminal.
La curiosidad no matará algato
Echemos un vistazo a lacomando de gato. Si tu corresgatocon un solo argumento, digamos un archivo de texto:
cat my_file.txt
Mostrará el contenido de ese archivo en la terminal.
Si ejecuta cat con dos argumentos, mostrará el contenido de ambos archivos:
cat my_first_file.txt my_second_file.txt
El operador de redirección ">"
Ahora, el > (operador de redirección) parece un poco más complejo, pero en realidad es muy simple.
Es una redirección. Tienes que mirar todo lo que muestra tu terminal como resultado de un comando. La salida suele ir al terminal. Si tu corres :
cat my_file.txt
El comando es 'gato', el argumento es "mi_archivo" y el resultado es elcontenidode ese archivo. La salida va al terminal. Bueno, cuando usas el operador de redirección ">", que requiere un argumento, lo que realmente haces es redirigir la salida a otro destino. Entonces, ¿qué pasa cuando corres?
cat my_file.txt > new_file.txt
es que en lugar de mostrar el contenido del archivo en su terminal, se escribirá en un archivo, "new_file.txt".
Alláesdos maneras de hacerlo.
Básicamente, el resultado de
cat my_file.txt > copy.txt
y
cp my_file.txt > copy.txt
son iguales: creas un nuevo archivo de texto, con el contenido de otro. Pero el proceso es muy diferente.
Una última cosa :
> file.txt
mientras crea un archivo vacío (redirecciona... nada a file.txt, por lo que está vacío. Bastante obvio, ¿no?)
Sin más contexto, no estoy seguro de lo que quieren decir los autores, pero espero que esto ayude. Buena suerte aprendiendo Unix. Al principio es un poco difícil, pero termina siendo muy divertido.
EDITAR 1:
Casi me olvido de responder:
"pasar un argumento de nombre de archivo" significa pasar un argumento, y ese argumento debe ser un nombre de archivo, por lo que el nombre de un archivo, digamos "archivo.txt". También podría ser la ruta completa al archivo, algo como:
/home/user/Documents/file.txt