Linux常用命令
1、查看当前光标所在位置
[root@VM-0-8-centos ~]# pwd
/root
2、切换到当前目录家目录
[root@VM-0-8-centos ~]# cd
[root@VM-0-8-centos ~]# cd ~
[root@VM-0-8-centos ~]# cd /home
3、cd - 和 cd ~的区别
cd -返回上一次操作命令的目录
[root@VM-0-8-centos home]# cd -
/root
[root@VM-0-8-centos ~]# cd ~
4、绝对路径和相对路径的区别
绝对路径是从根目录开始
相对路径是相对文件从当前位置开始
5、ls命令的l,a,h,r,t组合代表意思
-a 显示所有文件及目录 (. 开头的隐藏文件也会列出)
-h 显示文件大小
-l 除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出
-r 将文件以相反次序显示(原定依英文字母次序)
-t 将文件依建立时间之先后次序列出
-A 同 -a ,但不列出 "." (目前目录) 及 ".." (父目录)
-F 在列出的文件名称后加一符号;例如可执行档则加 "*", 目录则加 "/"
-R 若目录下有文件,则以下之文件亦皆依序列出
6、按时间顺序查看当前目录下的文件和文件夹
ls -rt
7、级联或并行创建目录
级联 mkdir /1/2/3
并行 mkdir 1 2 3
8、移动、拷贝命令,谁更快?
移动 mv
拷贝 cp
mv更快,cp还要再创建一个文件
9、如何创建一个空文件
vi file
touch file
cat /dev/null > file
10、查看文件内容
cat 查看全部,文件较小时用
more 以一页一页的形式显示文件内容,按空白键(space)显示下一页内容,按Enter键会显示下一行内容,按 b 键就会往回(back)一页显示,其基本用法如下:
more file1 查看文件file1的文件内容;
more -num file2 查看文件file2的内容,一次显示num行;
more +num file3 查看文件file3的内容,从第num行开始显示;
less指令查看文件内容时可以向前或向后随意查看内容;
less指令的基本用法为:
less file1 查看文件file1的内容;
less -m file2 查看文件file2的内容,并在屏幕底部显示已显示内容的百分比;
按空格键显示下一屏的内容,按回车键显示下一行的内容;
按 U 向前滚动半页,按 Y 向前滚动一行;
按[PageDown]向下翻动一页,按[PageUp]向上翻动一页;
按 Q 退出less命令;
11、实时查看文件内容
tail -f filename filename文件的尾部内容(默认10行,相当于增加参数 -n 10),刷新显示在屏幕上
tail -F filename 相当于f+retry,会去检测file是否存在
12、管道符
|
13、定位文件指定内容的上下n行
$grep -C 5 'parttern' inputfile //打印parttern匹配行的前后5行
$grep -A 5 'parttern' inputfile //打印parttern匹配行的后5行
$grep -B 5 'parttern' inputfile //打印parttern匹配行的前5行
14、查看当前命令的路径
[root@VM-0-8-centos ~]# which cd
/usr/bin/cd
which 用来查看当前要执行的命令所在的路径。
which命令原理: 在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。
[root@VM-0-8-centos ~]# whereis cd
cd: /usr/bin/cd /usr/share/man/mann/cd.n.gz /usr/share/man/man1/cd.1.gz
whereis 用来查看一个命令或者文件所在的路径
whereis命令原理: 只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息。
如果linux系统上装了多个版本的java,我们输入"java -version"来查看java版本。
我们执行的是哪个路径下的java呢?
这时候使用:which java
返回的是 PATH路径中第一个JAVA的位置,也就是JAVA命令默认执行的位置
如果使用命令: whereis java
这个命令把所有包含java(不管是文件还是文件夹)的路径都列出来。
15、全局环境变量和个人环境变量
/etc/profile 全局用户,应用于所有的Shell。
/$HOME/.profile 当前用户,应用于所有的Shell。
/etc/bash_bashrc 全局用户,应用于Bash Shell。
~/.bashrc 局部当前,应用于Bash Sell。
16、vi命令详解
https://www.cnblogs.com/mahang/archive/2011/09/01/2161672.html
17、command not find 一般什么原因导致
没有部署或者部署失败
18、强制删除/rz
rm -rf/rz
19、权限,读写执行
读取权限:等于4 用 r 表示
写入权限:等于2 用 w 表示
执行权限:等于1 用 x 表示
755
7: 4+2+1 rwx 所有者具有读取、写入、执行权限;
5: 4+0+1 r-x 同组用户具有读取、执行权限但没有写入权限;
5: 4+0+1 r-x 其他用户具有读取、执行权限但没有写入权限;
命令 : chmod 777 fileName
20、配置普通用户具有root权限
方法一:修改 /etc/sudoers 文件,找到下面一行,在root下面添加两行
root ALL=(ALL) ALL
user1 ALL=(ALL) ALL # 这个在切换时,是需要输入密码的,密码是当前普通用户的密码
user2 ALL=(ALL) NOPASSWD:ALL # 这个在切换时,不需要输入密码
修改完毕,用xcg,kongzhong帐号登录,
然后,执行 sudo 命令 ,即可执行相应的命令;
或者 执行 sudo su ,临时切换到root用户下,获取root权限。
方法二:修改 /etc/sudoers 文件,去除下面这一行的注释,然后修改普通用户默认组为wheel
%wheel ALL=(ALL) ALL
然后,修改普通用户,使其属于wheel 组,命令如下:
[root@rhel1 etc]# usermod -g wheel user1
修改完毕,用kongzhong1帐号登录;
然后,执行 sudo 命令 ,即可执行相应的命令;
或者 执行 sudo su ,临时切换到root用户下,获取root权限
21、查看文件夹大小和文件大小
du -sh dir
ls -h file
22、查看系统磁盘,内存,杀进程
top
free -m
kill -9 pid
23、rpm包安装、卸载
rpm -i bao.rpm
卸载
rpm -e bao.rpm
24、解压、压缩命令
tar
解包:tar zxvf filename.tar
打包:tar czvf filename.tar dirname
zip命令
解压:unzip filename.zip
压缩:zip filename.zip dirname