常用linux命令
目录
- 常用linux命令
- ls查看文件和目录的信息
- cd改变用户的工作目录
- mkdir创建新目录
- cp拷贝文件和目录
- mv修改文件和目录的名字
- rm删除文件和目录
- ln创建硬链接和软链接(符号链接)
- wc统计文件的行数、单词数和字符数
- cat查看文件的内容
- more查看文件内容
- head显示文件头几行的内容
- tail显示文件尾部几行的内容
- grep搜索文件中的某一字符串
- find搜索文件
- file用来确定文件的类型
- diff逐行比较两个文件
- du查看文件和目录的磁盘存储信息
- which定位和whereis命令定位命令的路径信息
- zip和unzip压缩和解压缩
- chmod改变文件或目录的属性
- ps查看进程的有关信息
- kill杀死进程
- who查看哪些用户登录到系统中
- man显示命令的手册页
- | 管道(pipe)
- >重定向
- echo
- <<
ls查看文件和目录的信息
ls:显示当前目录下的文件名和目录名
ls -a :显示当前目录下所有的文件名和目录名(以点号开头的是隐含文件)
ls -l :以长的格式显示文件名和目录名信息
ls -F:显示文件末尾的标记类型
ls -d:只显示目录本身的信息,而不是目录里面的内容
ls -R:显示目录及其所有子目录的文件信息
ls -i:查看文件索引节点的位置
cd改变用户的工作目录
cd + 绝对路径
cd: 回到用户的主目录
cd ./xxx 其中.表示当前目录
cd … 其中…表示当前目录的父目录
cd - :回到上一个工作目录
mkdir创建新目录
mkdir + 目录名 :创建新目录
mkdir -p :创建多级深度的新目录 mkdir dir1/dir2/dir3
cp拷贝文件和目录
cp 文件名 新的文件名:拷贝文件 cp a b
cp -r :拷贝目录
mv修改文件和目录的名字
mv 文件名 目录:移动文件
mv 文件名1 文件名2:文件或目录改名
rm删除文件和目录
rm 文件名 :删除文件
rm -i:删除文件前询问确认
rm -f:强制删除不询问确认
rm -r:删除目录
rmdir删除空目录(不能删除非空目录)
ln创建硬链接和软链接(符号链接)
ln 文件名1 链接名:创建硬链接
互为硬链接的文件是同一个文件 , 每创建一个硬链接,文件链接数增1
硬链接和源文件是同一份文件,inode节点号相同(inode它指向了物理硬盘的一个区块,事实上文件系统会维护一个引用计数,只要有文件指向这个区块,它就不会从硬盘上消失。)
ln -sv 文件名 链接名 软链接(符号链接)
软链接相当于windows中的快捷方式
可以把软链接理解为指针
软链接和原文件是不同的两个文件
wc统计文件的行数、单词数和字符数
wc -l:统计文件行数
wc -w:统计文件单词数
wc -c:统计文件字符数
cat查看文件的内容
cat 文件名 :查看文件的内容
cat file1 file2 > file12 :合并两个文件
more查看文件内容
cat显示文件满屏不停,more来查看文件时,每次显示一屏,敲任意键显示下一页的内容
more filename:查看文件内容
敲回车键显示下一行
敲字母b往回显示一页
敲空格键显示下一页内容
敲字母q结束命令
head显示文件头几行的内容
head filename:默认显示前10行的内容
head -数字 filename:指定显示的行数为输入的数字
tail显示文件尾部几行的内容
tail filename:默认显示尾部10行的内容
tail -数字 filename:指定显示的行数为输入的数字
tail -n +数字 filename:显示从第(数字行)开始直到文件结束的内容
grep搜索文件中的某一字符串
grep -n 字符串 file:如果搜索到指定的字符串,显示所在行的行号
grep -nv 字符串 file:反向搜索,如果某行没有指定的字符串,显示该行
find搜索文件
find pathname -option [-print] [-exec command {} ; }
find pathname -option [-print] [-okcommand {} ; }
pathname 查找的起始目录
-print 将匹配的文件名输出到标准输出
-exec command {} ; 对匹配的文件执行该参数所给出的shell命令
-ok command {} ; 和-exec的作用相同,但是更安全!执行命令前会提示用户,确定是否执行
注意{ }和\;之间的空格
file用来确定文件的类型
file file-list:用来显示文件类型
diff逐行比较两个文件
diff file1 file2:逐行比较两个文件的内容
du查看文件和目录的磁盘存储信息
du -s fileordir:只显示总计
du -k fileordir:表示显示的数据单位为kB
du -h fileordir:以人类可读的方式显示文件或目录的大小
which定位和whereis命令定位命令的路径信息
which command:要是用来查找系统PATH目录下的可执行文件
whereis command:可以是通过文件索引数据库而非PATH来查找的,所以查找的面比which要广
zip和unzip压缩和解压缩
zip -r file zipfilename:压缩
unzip zipfilename:解压
chmod改变文件或目录的属性
chmod 权限 文件名:修改文件的权限
进程管理
ps查看进程的有关信息
ps -e 显示所有的进程
ps -f:显示关于进程的所有信息
kill杀死进程
kill pid:杀死pid对应的进程
其他
who查看哪些用户登录到系统中
man显示命令的手册页
| 管道(pipe)
管道是Linux,Unix都有的概念,是非常基础,也是非常重要的一个概念。它的作用是将管道前(左边)的命令产生的输出(stdout)作为管道后(右边)的命令的输入(stdin)。ls | wc l,使用管道就可以将命令连接在一起。注意:管道是每一个进程的标准输出都会作为下一个命令的标准输入,期间的标准输出不能跨越管道作为后继命令的标准输入,管道是以子进程来运行的,所以管道并不能引起变量改变。
>重定向
scriptname >filename 重定向scriptname的输出到文件filename中去
echo
显示字符串
可以搭配重定向
<<
这个也被称为Here-document,用来将后继的内容重定向到左侧命令的stdin中。<<可以节省格式化时间,别且使命令执行的处理更容易。在实作的时候只需要输入<<和终止标志符,而后(一般是回车后)你就可以输入任何内容,只要在最后的新行中输入终止标志符,即可完成数据的导入。使用here-document的时候,你可以保留空格,换行等。如果要让shell脚本更整洁一点,可以在<<和终止符之间放上一个连字符(-)。