ls
该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息。
常用选项:
-a 列出目录下的所有文件,包括以 . 开头的隐含文件。
-d 将目录象文件一样显示,而不是显示其下的文件。 如:ls –d 指定目录
-k 以 k 字节的形式表示文件的大小。ls –alk 指定文件
-l 列出文件的详细信息。
-r 对目录反向排序。
-t 以时间排序。
-R 列出所有子目录下的文件。(递归)
其中最常用的是 ls-l ,可以简写成 ll(两个小写的L)
pwd
显示用户当前所在的目录。
cd
改变工作目录。将当前工作目录改变到指定的目录下。
cd .. : 返回上级目录
cd ~:进入用户家目
cd -:返回最近访问目录
cd 目录/子目录 :进入到具体目录
绝对路径 vs 相对路径
形如: /usr/share/tomcat/logs/ 以根目录开头的, 称为绝对路径。
形如: ./logs 以 . 或者 .. 开头的, 称为相对路径。
使用tab 键补全
我们敲的所有的 Linux 命令, 都可以使用 tab 键来尝试补全, 加快效率。
使用ctrl + c 重新输入
如果命令或者目录敲错了, 可以 ctrl + c 取消当前的命令。
touch
touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的
文件。
示例:touch test.txt
cat
查看目标文件的内容
示例:cat test.txt
mkdir
在当前目录下创建一个目录
示例:mkdir test1
rm
删除文件或目录。
-f 即使文件属性为只读(即写保护),亦直接删除
-i 删除前逐一询问确认
-r 删除目录及其下所有文件
示例:rm test.txt
重要注意事项:
千万不要运行 rm -rf / 或 rm -rf /*, 尤其是在公司的生产服务器上,为这个命令是直接删除根目录。
cp
复制文件或目录。
cp指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存
在的目录,则它会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后的目的地并非一个已存在的目录,则会出现错误信息。
示例:cp test1.txt test2.txt
mv
常用选项
-f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖
-i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!
示例:mv test1.txt test2.txt
man
查看联机手册获取帮助。
示例:man ls
less
查看文件内容,不会立刻把所有文件内容加载到内存中,也能进行查找
选项:
j k / 方向键: 向上向下滚动屏幕.
-N 显示每行的行号
/字符串:向下搜索“字符串”的功能
n:重复前一个搜索(与 / 或 ? 有关)
q: 退出
head
查看文件的内容,查看文件的开头,默认head命令打印其相应文件的开头10行。
选项:
-n<行数> 显示的行数
tail
用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件
选项:
-f 循环读取
-n<行数> 显示行数
举例:有一个文件共有100行内容,请取出第50行内容
# 方法1
head -n50 test > tmp # 将前50行装入临时文件 tmp
tail -n1 tmp # 得到中间行
# 方法2
head -n50 test | tail -n1
vim
vim 是一个知名的文本编辑器. 前面cat, less, head, tail 等命令只能查看文本, 不能编辑文本. 使
用 vim 就可以进行编辑了。
1) 创建文件/ 打开文件
vim [文件名]
2) 进入插入模式
vim 打开文件后默认是 普通模式. 普通模式下键盘的按键表示一些特殊功能的快捷键. (例如按下 j 并不是输入字母 "j", 而是表示光标往下移动一行). 需要进入插入模式才能进行文本编辑。
使用 i 键可以进入到 插入模式. (左下角提示 --INSERT-- ) 然后就可以像记事本一样正常编辑了。
3) 保存
在插入模式下不能保存文件, 需要先回到 普通模式 . 按下 Esc 回到普通模式.
在普通模式下输入 :w , 再按下回车, 即可保存文件。
4) 退出
在插入模式下不能退出, 需要先回到 普通模式。
在普通模式下输入 :q , 再按下回车, 即可退出。
也可以直接使用 :wq 同时执行保存和退出。
grep
用于查找文件中是否包含指定字符串, 并显示对应的行。
选项:
-n<行数> 显示的行数
-w 全字匹配. 要求整个单词都完全相同的结果才能匹配出来, 而不仅仅是一个单词的一部分.
-r 递归查找. 可以搜索多级目录下的所有文件.
--color 高亮查找到的结果
--include 指定查找某些文件
--exclude 指定排除某些文件
示例:grep "hello" Hello.java
ps
用于查看当前系统上运行的进程。
选项:
a 显示一个终端的所有进程
u 以用户为主的格式来显示程序状况
x 显示所有程序,不以终端机来区分
示例:
ps aux # 显示系统上所有的进程
ps aux | grep "进程名"
ps aux | grep "进程id"
netstat
查看系统上的网络状态。
选项:
-a 显示所有正在或不在侦听的套接字
-n 显示数字形式地址而不是去解析主机、端口或用户名
-p 显示套接字所属进程的PID和名称
示例:
netstat -anp
netstat -anp | grep "进程名"
netstat -anp | grep "端口号"