使用的电脑为 mac 。
参考:Learn Enough Command Line to Be Dangerous
>
和>>
就算没有编辑器,也是可以把输出的一行字,新创建到一个文件中。12345678910111213141516$ echo "From fairest creatures we desire increase," > sonnet_1.txt`# 这句命令就可以创建一个新的文件 sonnet_1.txt 并把 echo 后面的那句话放到这个文件中。$ cat sonnet_1.txt# 查看 sonnet_1.txt,会把 sonnet_1.txt 中的内容输出。(cat 是 concatenate 的缩写)$ echo "That thereby beauty's Rose might never die," >> sonnet_1.txt# 使用 >> 可以把一句话追加到文件中。$ diff sonnet_1.txt sonnet_1_lower_case.txt< That thereby beauty's Rose might never die,---> That thereby beauty's rose might never die,# 快速比较两个文件的不同。ls
列出当前目录所有的文件和文件夹。
123456789101112131415161718$ ls foo # 列出这个 foo 下所有的文件和文件夹。$ touch foo # 可以创建一个空的文件,名字是 foo.$ cd + 文件名 # 切换到这个文件下面。$ ls *.txt # 可以列出所有的以 .txt 结尾的文件$ ls -l *.txt # 可以列出所有以 .txt 结尾的文件,以及更改文件的时间等。时间前面的是这个文件的大小(字节)。$ ls -rtl # 可以按照修改时间排序,最近的在最后面。这个也可以拆开写 ls -r -t -l$ echo "*.txt" > .gitignore$ cat .gitignore*.txt$ ls # 不会列出隐藏的文件 .gitignore 。$ ls -a # 可以列出所有的文件包括隐藏的文件 .gitignore 。mv
1234$ echo "test text" > test$ mv test test_file.txt$ lstest_file.txt重命名 text 文件变成 test_file.txt。
cp copy 复制文件
1234$ cp test_file.txt second_test.txt$ lssecond_test.txttest_file.txtrm remove 删除文件
1234$ rm second_test.txtremove second_test.txt? y$ ls second_test.txtls: second_test.txt: No such file or directoryTab completion Tab 键自动补全
123$ rm tes⇥ # 输入一半的时候可以按住 tab 键,便会自动补全后面的文件名。$ rm -f *.txt # 删除所有以 *.txt 结尾的文件。f 为 force 的缩写。
总结
翻译好累 😫,结合上面看吧。
Command | Description | Example |
---|---|---|
> | Redirect output to filename | $ echo foo > foo.txt |
>> | Append output to filename | $ echo bar >> foo.txt |
cat |
Print contents of file to screen | $ cat hello.txt |
diff |
Diff files 1 & 2 | $ diff foo.txt bar.txt |
ls | List directory or file | $ ls hello.txt |
ls -l | List long form | $ ls -l hello.txt |
ls -rtl | Long by reverse modification time | $ ls -rtl |
ls -a | List all (including hidden) | $ ls -a |
touch |
Create an empty file | $ touch foo |
mv |
Rename (move) from old to new | $ mv foo bar |
cp |
Copy old to new | $ cp foo bar |
rm |
Remove (delete) file | $ rm foo |
rm -f |
Force-remove file | $ rm -f bar |