从一开始学习linux到现在,已经有很多时间没有碰linux系统了,这个陌生感让人很不适,以前也没有写什么总结,再接触还是也个总结对以后使用根据方便。
搬运某培训机构资料(又快又全)
Linux 的五个重启命令
1、shutdown
shutdown命令安全地将系统关机。
2、poweroff
3、init
init 0为关机﹐init 1为重启
4、reboot
reboot的工作过程差不多跟halt一样﹐不过它是引发主机重启﹐而halt是关机。
5、halt
linux目录结构
-
/bin 存放二进制可执行文件(ls,cat,mkdir等),常用命令一般都在这里。
-
/etc 存放系统管理和配置文件
-
/home 存放所有用户文件的根目录,是用户主目录的基点,比如用户user的主目录就是/home/user,可以用~user表示
-
/usr 用于存放系统应用程序,比较重要的目录/usr/local
本地系统管理员软件安装目录(安装系统级的应用)。这是最庞大的目录,要用到的应用程序和文件几乎都在这个目录。/usr/local/bin 本地增加的命令
/usr/local/lib 本地增加的库 -
/opt 额外安装的可选应用程序包所放置的位置。一般情况下,我们可以把tomcat等都安装到这里。
-
/proc 虚拟文件系统目录,是系统内存的映射。可直接访问这个目录来获取系统信息。
-
/root 超级用户(系统管理员)的主目录(特权阶级)
-
/sbin 存放二进制可执行文件,只有root才能访问。这里存放的是系统管理员使用的系统级别的管理命令和程序。如ifconfig等。
-
/dev 用于存放设备文件。
-
/mnt 系统管理员安装临时文件系统的安装点,系统提供这个目录是让用户临时挂载其他的文件系统。
-
/boot 存放用于系统引导时使用的各种文件
-
/lib 存放跟文件系统中的程序运行所需要的共享库及内核模块。共享库又叫动态链接共享库,作用类似windows里的.dll文件,存放了根文件系统程序运行所需的共享文件。
-
/tmp 用于存放各种临时文件,是公用的临时文件存储点。
-
/var 用于存放运行时需要改变数据的文件,也是某些大文件的溢出区,比方说各种服务的日志文件(系统启动日志等。)等。
-
/lost+found 这个目录平时是空的,系统非正常关机而留下“无家可归”的文件(windows下叫什么.chk)就在这里
目录的操作命令(增删改查)
(1)增加目录操作(增)
命令:mkdir 目录名称
示例:在根目录 / 下 mkdir test
(2)查看目录(查)
命令:ls [-al] 父目录
示例:在根目录 / 下使用ls,可以看到该目录下的所有的目录和文件
示例:在根目录 / 下使用ls -a,可以看到该目录下的所有文件和目录,包括隐藏的
在根目录 / 下使用ls -l,可以看到该目录下的所有目录和文件的详细信息
注意:ls -l 可以缩写成ll
(3)寻找目录(查)
命令:find 目录 参数
示例:查找/root下的与test相关的目录(文件) find /root -name ‘test*’
(4)修改目录的名称(改)
命令:mv 目录名称 新目录名称
示例:test目录下有一个oldTest目录,使用mv oldTest newTest命令修改
注意:mv的语法不仅可以对目录进行重命名而且也可以对各种文件,压缩包等进行 重命名的操作
(5)移动目录的位置—剪切(改)
命令:mv 目录名称 目录的新位置
示例:在test下将newTest目录剪切到 /usr下面,使用mv newTest /usr
(6)拷贝目录(改)
命令:cp -r 目录名称 目录拷贝的目标位置 -----r代表递归拷贝
示例:将/usr下的newTest拷贝到根目录下的test中,使用cp -r /usr/newTest /test
注意:cp命令不仅可以拷贝目录还可以拷贝文件,压缩包等,拷贝文件和压缩包时不 用写-r递归
(7)删除目录(删)
命令:rm [-rf] 目录
示例:删除/usr下的newTest,进入/usr下使用rm -r newTest
示例:删除/test下的newTest而不需要询问强制删除,在/test下使用rm -rf newTest
注意:rm不仅可以删除目录,也可以删除其他文件或压缩包,为了增强大家的记忆, 无论删除任何目录或文件,都直接使用rm -rf 目录/文件/压缩包
文件的操作命令(增删改查)
(1)文件的创建(增)
命令:touch 文件名称 ----- 空文件
示例:在test目录下创建一个空文件 touch aaa.txt
(2)文件的查看(查)
命令:cat/more/less/tail 文件
示例:使用cat查看/etc/sudo.conf文件,只能显示最后一屏内容
示例:使用more查看/etc/sudo.conf文件,可以显示百分比,回车可以向下一行, 空格可以向下一页,q可以退出查看
示例:使用less查看/etc/sudo.conf文件,可以使用键盘上的PgUp和PgDn向上 和向下翻页,q结束查看
示例:使用tail -10 查看/etc/sudo.conf文件的后10行,Ctrl+C结束
注意:命令 tail -f 文件 可以对某个文件进行动态监控,例如tomcat的日志文件, 会随着程序的运行,日志会变化,可以使用tail -f catalina-2016-11-11.log 监控文件的变化
(3)修改文件的内容(改)
命令:vim 文件
示例:编辑/test下的aaa.txt文件,使用vim aaa.txt
但此时并不能编辑,因为此时处于命令模式,点击键盘i/a/o进入编辑模式,可以编辑文件
编辑完成后,按下Esc,退回命令模式
此时文件虽然已经编辑完成,但是没有保存,需输入冒号:进入底行模式,在底行模 式下输入wq代表写入内容并退出,即保存;输入q!代表强制退出不保存。
总结:vim编辑器是Linux中的强大组件,是vi编辑器的加强版
在实际开发中,使用vim编辑器主要作用就是修改配置文件
vim 文件------>进入文件----->命令模式------>按i进入编辑模式----->编辑文件 ------->按Esc进入底行模式----->输入:wq/q!
(4)删除文件(删)
同目录删除:熟记 rm -rf 文件 即可
压缩文件的操作命令
(1)打包并压缩文件
Linux中的打包文件一般是以.tar结尾的,压缩的命令一般是以.gz结尾的。
而一般情况下打包和压缩是一起进行的,打包并压缩后的文件的后缀名一般.tar.gz。
命令:tar -zcvf 打包压缩后的文件名 要打包压缩的文件
其中:z:调用gzip压缩命令进行压缩
c:打包文件
v:显示运行过程
f:指定文件名
示例:打包并压缩/test下的所有文件 压缩后的压缩包指定名称为xxx.tar.gz
tar -zcvf xxx.tar.gz aaa.txt bbb.txt ccc.txt
或:tar -zcvf xxx.tar.gz /test/*
(2)解压压缩包(重点)
命令:tar [-xvf] 压缩文件
其中:x:代表解压
示例:将/test下的xxx.tar.gz解压到当前目录下
tar -xvf xxx.tar.gz
示例:将/test下的xxx.tar.gz解压到根目录/usr下
tar -xvf xxx.tar.gz -C /usr------C代表指定解压的位置
其他命令
(1)显示当前所在位置
pwd
(2)搜索命令
命令:grep 要搜索的字符串 要搜索的文件
示例:搜索/usr/sudu.conf文件中包含字符串to的行 grep to sudo.conf
示例:搜索/usr/sudu.conf文件中包含字符串to的行 to要高亮显示 grep to sudo.conf --color
(3)管道命令
命令:| 将前一个命令的输出作为本次目录的输入
示例:查看当前系统中所有的进程中包括system字符串的进程 ps -ef | grep system
(4)查看进程
命令:ps -ef
示例:查看当前系统中运行的进程
(5)杀死进程
命令:kill -9 进程的pid
(6)网络通信命令
查看当前系统的网卡信息:ifconfig
查看与某台机器的连接情况:ping 192.125.24.155
ctrl+c可以终止ping
ctrl+z可以暂停ping,该暂停只是把进程放到后台去了,使用命令fg可以调出到前台来
还可以使用ping -w 10 ip(域名) 或 ping -c 10 ip(域名)
查看当前系统的端口使用:netstat -an
Linux的权限命令
文件的类型:
d:代表目录
-:代表文件
l:代表链接(可以认为是window中的快捷方式)
后面的9位分为3组,每3位置一组,分别代表属主的权限,与当前用户同组的 用户的权限,其他用户的权限
r:代表权限是可读,r也可以用数字4表示
w:代表权限是可写,w也可以用数字2表示
x:代表权限是可执行,x也可以用数字1表示
修改文件/目录的权限的命令:chmod
示例:修改/test下的aaa.txt的权限为属主有全部权限,属主所在的组有读写权限,
其他用户只有读的权限
chmod u=rwx,g=rw,o=r aaa.txt
上述示例还可以使用数字表示:
chmod 764 aaa.txt
补充
more:百分比显示
示例:使用more查看/etc/sudo.conf文件,可以显示百分比,回车可以向下一行,空格可以向下一页,q可以退出查看
more sudo.conf
less:翻页查看
示例:使用less查看/etc/sudo.conf文件,可以使用键盘上的PgUp和PgDn向上 和向下翻页,q结束查看
less sudo.conf
cat -n 文件路径 | tail -n +5 | head -n 6 // 显示 5 ~ 10 行的内容, 包括5 和10
tail -n +iLinNum // 从ILinNum开始显示到结束的内容
tail -n iLinNum // 显示最后 iLinNum 行的内容
head -n iLinNum // 显示开头 iLinNum 行的内容
head -n +iLinNum // 同 head -n iLinNum
grep -C 5 'false' catalina.out 显示文件里匹配false那行以及上下5行
grep -B 5 'false' catalina.out 显示false及前5行
grep -A 5 'false' catalina.out 显示false及后5行
services.msc
netstat -nap | grep [pid]
85
nohup java -jar -Xms1024m -Xmx2048m jpaas-bpm.jar --nacos-server-addr='172.16.13.85:8848' > logs/jpaas-bpm.out 2>&1 &
nohup java -XX:+PrintGCDetails -Djava.rmi.server.hostname=172.16.13.85 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=3214 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -jar -Xms2g -Xmx2g jpaas-bpm.jar --nacos-server-addr='172.16.13.85:8848' > logs/jpaas-bpm.out 2>&1 &
17
nohup java -jar -Xms512m -Xmx2048m jpaas.jar --nacos-server-addr='172.16.16.17:8848' --nacos-namespace='sp' > logs/jpaas-bpm.out 2>&1 &
1.按照文件名查找
(1)find / -name httpd.conf #在根目录下查找文件httpd.conf,表示在整个硬盘查找
(2)find /etc -name httpd.conf #在/etc目录下文件httpd.conf
(3)find /etc -name '*srm*' #使用通配符*(0或者任意多个)。表示在/etc目录下查找文件名中含有字符串‘srm’的文件
(4)find . -name 'srm*' #表示当前目录下查找文件名开头是字符串‘srm’的文件
2.按照文件特征查找
(1)find / -amin -10 # 查找在系统中最后10分钟访问的文件(access time)
(2)find / -atime -2 # 查找在系统中最后48小时访问的文件
(3)find / -empty # 查找在系统中为空的文件或者文件夹
(4)find / -group cat # 查找在系统中属于 group为cat的文件
(5)find / -mmin -5 # 查找在系统中最后5分钟里修改过的文件(modify time)
(6)find / -mtime -1 #查找在系统中最后24小时里修改过的文件
(7)find / -user fred #查找在系统中属于fred这个用户的文件
(8)find / -size +10000c #查找出大于10000000字节的文件(c:字节,w:双字,k:KB,M:MB,G:GB)
(9)find / -size -1000k #查找出小于1000KB的文件
3.使用混合查找方式查找文件
参数有: !,-and(-a),-or(-o)。
(1)find /tmp -size +10000c -and -mtime +2 #在/tmp目录下查找大于10000字节并在最后2分钟内修改的文件
(2)find / -user fred -or -user george #在/目录下查找用户是fred或者george的文件文件
(3)find /tmp ! -user panda #在/tmp目录中查找所有不属于panda用户的文件