常用命令
1、 解压tar包
后缀名.tar 格式:tar -xvf 要解压的文件
后缀名.tar.gz 格式:tar -xzvf 解压的文件
一、目前主流的Linux系统
- Red Hat Linux : 是Red Hat 发布最早的个人Linux版本
- Fedora Core (FC):被Red Hat公司定位为技术测试平台,很多新技术会在上面使用
- Red Hat Enterprise Linux (RHEL): 这个则是Red Hat发布的Linux企业版
- CentOS (Community Enterprise Operating System):社区企业操作系统
- Ubuntu Linux :音译-乌班图、等,是桌面应用为主的操作系统
- SuSE Linux:是德国最著名的Linux操作系统,在国内市场份额不大
二、shell基础
- shell : 定义为“
壳
”,也就是说Shell是包在Linux内核外面的一层壳,用户通过Shell与系统内核交互。换句话说,他就是一个命令解释器,同时Linux系统下面有很多Shell,只是Bash(bash)一直作为默认的Shell。 - Shell命令分为:
内置命令
,其他命令
(存在bin文件夹下面的命令如:/bin/ls)。当用户登录系统之后,系统将内置命令
载入内存(如:cd,pwd,exit 等,内置命令主要为了提高命令的运行)。 - 命令提示符:# 代表登录的是超级用户,$ 则是普通用户
- Shell 的语法格式 命令 -命令选项 参数 , 比如:
ls -al /etc
- Shell 的通配符:【】、?、*,分别代表符合其中的一个字符,替代一个字符,替代一个或多个字符
- Shell的重定向、分为默认输入:键盘、默认输出:屏幕、默认错误输出:屏幕,重定向的意思是将这些默认方向修改,用到的命令:<,<<(<<输入的内容是一对分割号之间的) 输入重定向 >,>>(>>代表追加)输出重定向 2>,2>>(2>>代表追加)错误输出重定向。
- Shell的导管|,管道可以把很多命令连接起来,可以把第1个命令的输入当作第2个命令的输出,第2·个命令的输出当作第3个命令的输入,依此类推。因此,管道的作用就是把一个命令的输出1作下一个命令的输入,而不经过任何中间文件,比如
ls -al /tec/* | more
三、Shell常用命令
- 这个博主总结的很简洁:点这里!基本的操作都有,适合有一定Linux命令基础的人看,忘记的命令属性可以再查相关资料。
四、文件目录
~
下文件目录
五、补充命令
-
find命令
16.1 find 命令非常灵活,大约可以分为四类
(1)根据时间节点来查找文件 find / -mtiom 0
表示列出根目录下在今天进行修改的文件,其中-mtime,还有-atime ,-ctime。
(2)跟用户和群组有关的查找 :find /home -user root
表示列出跟root有关的文件,其他的命令参数还有-uid,-group,-gid,-nouser(用来查找无用户关联文件),-nogroup。
(3)跟文件权限及名称有关的:find /home -name passwd其他命令参数有-size,-type,-perm(=文件权限)
(4)具有额外可进行动作的查找:find /usr/bin /usr/sbin-perm
/7000 -exec ls -l {} ; 表示找到的文件使用 ls -l 列出来~。其他的命令参数,-print说道查找文件,还有其他的命令也可以实现比如:whereis,和locate这两个,不过这两个命令并不是直接检索磁盘,whereis,是只搜索特定目录下的文件,locate是搜索数据库(数据库可能一天才更新一次,所以可能存在查找不到的情况。which只能实现可执行文件的查询,因为他是根据系统的PATH路径,来检索文件的)
-
grep命令
17.1 grep是将匹配关键字的哪一行数据进行输出,具体参数有:grep [-acinv] [–color=auto] ‘搜寻字串’ filename
-a 表示binary(二进制文件)以text文件格式来匹配
-c表示计算搜寻到的字符串的行数
-i 表示忽略大小写
-n 表示输出行号
-v 表示反向选择,匹配不包含该字符串的行
–color=auto 自动给关键字上色 -
wc命令
这个命令主要是用来做字符统计的,命令格式为wc -lwm 文件名
-l为之显示行,-w 为仅显示字 ,-m 为显示总的字符数 -
xargs命令
表示对输入参数的操作,X可以理解为乘除的乘号,args为参数,比如:
cut -d ‘:’ -f 1 /etc/passwd | head -n 3 | xargs -n 1 id
表示将切分的第一段的结果通过head命令拿到前三行,并将作为参数调用id命令,xargs每次限定id的每次参数为1个
命令参数有:
-n 每次限制的参数个数
-0将特殊字符转义
-e EOF(END of File ) 后面接一个字符,当检测到该字符时,停止运行
-p 没次执行,需要用户确认信息 -
ln命令
链接分为(Hard Link)实体链接和符号(Symbolic Link)链接
20.1 实体链接,也就是指跟源文件指向同一个inode,链接之后,这两个文件的所有信息都会相同,并且修改一个文件这两个都会改变。但是,删除一个文件,这个文件事实上并没有消失,因为inode还存在,并被另外一个文件拿着。
20.2 符号链接(symbolic Link)符号链接,可以理解为Windows操作系统里面文件的快捷方式,命令为 ln -s 源文件 目标文件(不加-s 就是实体链接)。源文件指向iNode节点,目标文件指向源文件。当源文件删除以后,目标文件会失效。 -
ps命令
主要是用来查看程序的命令,ps aux,查看系统中的所以程序(ps -ef相同效果),可以跟grep组合使用,ps -l 查看自己所用到的用户。 -
后台任务相关命令
22.1 由于每个用户只能有一个bash,所以在操作一个命令时,过程中会在终端上输出很多信息,所以这个过程中无法进行下一条命令的操作。所以可以在一条命令之后加上&
符号,将命令放到后台执行。
22.2 jobs -lsr 列出后台任务,-l表示除了基本信息,还需要列出PID
-r 列出后台正在运行的工作,-s仅列出在后台停止的任务
22.3 Ctr + Z可以终止后台正在运行的Job
22.4 fg %jobnumber命令可以将后台命令拿到前台运行(foreground)
比如:fg %1
22.5 bg %jobnumber 之前后台任务被终止之后,可以使用这个命令来开始暂停任务
22.6 nohup wget http://www.example.com/test.zip > download.log 2>&1 &nohup命令
忽视命令窗口关闭的信号。> download.log
标准输出重定向到download.log 文件。2>&1
将标准错误输出重定向到 标准输出. -
Kill命令
23.1 kill的命令很多,常用的有kill -l列出keill后面所有的能接的对照表
如kill -9 强制终止一个任务 kill -15 正常终止一个任务,当然如果一个任务无法被正常终止的话,这这个终止就没有效果。
六、Linux常识
-
netstat 命令
24.1 netstat -tunlp|grep 8080tcp6 0 0 :::8080 ::: LISTEN 3511/java //上述结果表示8080端口被一个进程ID为3511的Java进程占用
通过kill 命令关闭程序。
24.2 ss 命令
ss 命令来自于 iproute 包,是 netstat 的升级版本 -
Linux系统启动的过程
1载入BIOS的硬件信息与进行自我测试,并依据设置取得第一个可开机的设备;
2读取并执行第一个开机设备内MBR的boot Loader (亦即是grub2, spfdisk等程序)
3依据boot loader的设置载入Kermel , Kemel会开始侦测硬件与载入驱动程序
4在硬件驱动成功后, Kermel会主动调用systemd程序,并以default.target流程开机;
(1)systemd执行sysinit.target初始化系统及basic.target准备操作系统;
(2)systemd启动multi-user.target下的本机与服务器服务
(3)systemd执行multi-user.target下的/etc/rc.d/rc.local文件
(4)systemd执行multi-user.target下的getty.target及登陆服务
(5)systemd执行graphical需要的服务 -
Linux的运行级别
(0)关机
(1)单用户
(2)多用户无网络
(3)多用户有网络
(4)保留,未使用
(5)图形化界面模式
(6)重启模式 -
终端文件在哪?黑洞文件在哪?
/dev 目录是存放系统的设备文件
-终端文件:/dev/tty
-黑洞文件: /dev/null -
Linux进程的7中状态(主要的5中)
D
不可中断 Uninterruptible(usually IO)
R
正在运行,或在队列中的进程 Runing
S
处于休眠状态 sleep
T
停止或被追踪 stop
Z
僵尸进程 zombie
W 进入内存交换(从内核 2.6 开始无效)
X 死掉的进程 -
1、查看分区文件系统类型(两种)
(1)df -T 或者 df -h(查看空间具体大小)
(2)lsblk -f
2、卸载挂点(指定设备路径)
(1)umount /dev/sdb1
3、格式化分区(指定格式之后的文件系统)
(1)mkfs.ext4 /dev/sdb1
4、挂载分区(/data1是存在的文件路径)
(1)mount /dev/sdb1 /data1