这篇文章是写给有点Linux基础的,徐小黑总结了一下常用命令以及一些小技巧。
小技巧
- tab补齐路径,非常好用
- cd -
- //在目录和上一个操作的目录间来回切换
- cd …
- //回到上级目录
- ls -al
- mkdir -p dir/dir1/dir2
//创建多级目录- mkdir -p test/{test1,test2/{test3,test4}}
//创建目录更高级用法
创建软链接(就是windows里的快捷方式)
- ln -s /usr/local/src/
删除文件夹下所有东西
- rm -rf *
查看文件内容
- cat /etc/passwd 可读、可写
- more /etc/passwd 只读,往下翻
- less /etc/passwd 只读,可往上、往下翻
//more和less按q 退出- head /etc/passwd 看文件的前10行
- head -5 /etc/passwd 看文件的前5行
- tail /etc/passwd 看文件的最后10行
- tail -5 /etc/passwd 看文件的最后5行
- cat /etc/passwd
//查看用户
- tail /etc/group
//查看组
改变权限
a: all
u:user
g:group
o: other
+:添加权限
-:去掉权限
r: 读 w:写 x: 执行
所有者 组内用户 其他用户
权限 rwx rw- r-x
位权 421 420 401
权限 7 6 5
- chmod a+x test.txt
- chmod u-x test.txt
- chmod g-r test.txt
- chmod o-w test.txt
- chmod 777 test.txt
如果需要把文件夹下所有文件权限都改变,则需要加上-R选项
- chmod -R 755 dir
添加用户和组
- su root
- groupadd trainning
- tail -1 /etc/group
- useradd user1 -m -s /bin/bash -g training
- tail -2 /etc/group
- tail -1 /etc/passwd
删除用户和组
- userdel -r user2
- tail /etc/passwd
- groupdel trainning
- tail /etc/group
改变文件的用户和组
chown/chgrp
文件的查找
locate命令从系统的数据库中查找文件
- sudo updatedb //跟新数据库
- locate hello.c //搜索
find
- find -name hello.c
- find -iname “* hello *”
- find /usr/local/src/ -iname “*.c”
- find /home/ -user lingyun
- find /dev -type b
find -iname “*.o” -exec rm -rf {} ;
//将 .o 文件找出并删除
文件内容的查找
- grep xiaobai /etc/passwd
//在后面的文件中寻找xiaobai
- grep -n xiaobai /etc/passwd
//显示行号
- grep main *.c
sudo grep -v “#” /etc/inittab
//在后面的文件中寻找不包括#的信息
basename/dirname
basename: 获取全路径中的文件名,也就是最后一个/后面的字符串;
dirname:获取全路径中的路径名,也就是最后一个/前面的字符串;
转义字符 ‘’
basename ‘pwd’
//表示取pwd命令得到的值的/后面的字符串
dos2unix/unix2dos
有时我们把windows下的文件文件放到Linux下,或Linux下的文件放到Windows下用不同编辑器打开时,发现换行出现问题,这是因为:
Dos和windows采用回车CR(\r)+换行LF(\n)表示下一行;
UNIX/Linux采用换行符LF(\n)表示下一行;
苹果机(MAC OS系统)则采用回车符CR(\r)表示下一行;
这时,在Linux下有两个命令可以实现windows和linux回车的转换:
[laoniao@centos6 ~]$ unix2dos hello.c
unix2dos: converting file hello.c to DOS format …
[laoniao@centos6 ~]$ dos2unix hello.c
dos2unix: converting file hello.c to UNIX format …
注意:这两个命令系统默认没有安装,而需要自己安装unix2dos和dos2unix两个软件包才会有这两个命令