linux基础

Linux的优势

一切都是一个文件。(包括硬件,文本,二进制,源代码)
系统中拥有小型,单一用途的程序。(一个程序只负责做好自己的本职工作)
当遇到复杂任务,通过不同功能用途的程序组合起来完成。
避免令人困惑的用户界面就是没有复杂的图形界面。
连配置文件都存储在文本中,方便增删改查。
不在乎后缀名,有没有都无所谓,不是通过后缀名来定义文件的类型。

简述shell

shell

shell是Linux系统中后台运行的一种特殊程序也可以理解成一种特殊的软件
提供了用户与内核进行交互操作的一种接口。
bash是linux里面默认的
shell程序位于/bin/bash 

内部命令

集成于Shell解释器程序内部的一些特殊指令,也称为内建(Built-in)指令 
属于Shell的一部分
没有单独对应的系统文件
自动载入内存,可以直接使用

外部命令

Linux系统中能够完成特定功能的脚本文件或二进制程序
属于Shell解释器程序之外的命令
每个外部命令对应了系统中的一个文件
必须知道其对应的文件位置,由Shell加载后才能执行



命令优先级 别名命令>内部命令>缓存命令>外部命令

基础指令

快捷指令

Esc+.或Alt+.:粘贴上一个命令的参数
Ctrl+a	光标移到最前
Ctrl+e end 键	光标移到最后
Ctrl+U	清空至行首不包括当前光标处的 字符
Ctrl+K	清空至行尾包括当前光标处的字符
Ctrl+w	从当前光标删除到开头
ALT+d	从当前光标删除末尾
反斜杠“\” 强制换行或转义

alias别名

alias 查看所有别名 
unalias 别名 删除指定别名  
\命令   #执行命令本身而不是别名  
alias后面双引号:变量是静态 单引号:变量是动态

通配符

*      任意长度
?     代表一个字符
[0-9]  代表单个数字
[^0-9] 除了数字
[a-z]  少了大Z
{a..z}  小写a-z
{1..10} 1到10 
[[:lower:]]	小写字母表示 a-z
[[:upper:]]	大写字母表示 A-Z
[^zhou]	匹配列表中的所有字符以外的字符
[[:digit:]]	任意数字,相当于0-9

硬链接软链接

1.本质
硬链接:本质是同一个文件
软链接:本质不是同一个文件
​
2.跨设备
硬链接:不支持
软链接:支持
​
3.inode
硬链接:相同
软链接:不同
​
4.链接数
硬链接:创建新的硬链接,链接数会增加,删除硬链接,链接数减少
软链接:创建或删除,链接数不会变化
​
5.文件夹
硬链接:不支持
软链接:支持
​
6.相对路径
硬链接:原始文件相对路径是相对于当前工作目录
软链接:原始文件相对路径是相对于链接文件的相对路径
​
7.删除源文件
硬链接:只是链接数减一,但链接文件的访问不受影响
软链接:链接文件将无法访问
​
8.文件类型
硬链接:和源文件相同
软链接:链接文件,和源文件无关

新建软连接   ln -s 源文件(绝对路径) 软连接路径
建立硬连接  In  源文件路径 硬链接路径     #不能跨分区建立连接 无法对文件夹创建   
 .   ..也是硬链接
删除连接   rm -rf 软连接路径
rm -rf 软连接路径/  #软连接路径加/ 会删除源文件

ls

-S 以文件容量大小排序
-i  indoe号 
-t 以时间排序,最新的文件会排在上面
-r 表示反向排序、倒序输出
-A  显示全部文件或隐藏文件,但不包括 ...
-a   显示全部包括隐藏文件
-h  友好显示文件大小

du

du [目录] 只显示所有目录的大小
-d 数字 查看目录数字层级的占用
-a包含所有文件不止目录
-s 只看当前目录总大小
--max-depth=n  (-d 1)最大显示到第n层

df

df  [文件]  可显示所有文件系统对i节点和磁盘块的使用情况.
-a 显示所有文件系统的磁盘使用情况,包括0块(block)的文件系统,/proc文件系统.
-i 显示i节点信息,而不是磁盘块.
-t 显示各指定类型的文件系统的磁盘空间使用情况.
-x 列出不是某一指定类型文件系统的磁盘空间使用情况(与t选项相反).
-T 显示文件系统类型.

如果用户删除了一个正在运行的应用所打开的某个目录下的文件,
则du命令返回的值显示出减去了该文件后的目录的大小。
但df命令并不显示减去该文件后的大小。直到该运行的应用关闭了这个打开的文件,
df返回的值才显示出减去了该文件后的文件系统的使用情况。

提示空间快满,使用 rm 删除了很大的无用文件后,df仍然看到空间不足
使用lsof |grep delete查看是否正在被使用,如果进程不重要,可以kill杀死进程。
如果进程重要不可断开,cat /dev/null > fi.txt清空正在使用的文件,释放空间。

touch

touch已存在文件 刷新文件时间
每个文件有三个时间戳:
access time 访问时间,atime,读取文件内容
modify time 修改时间,mtime,改变文件内容(数据)
change time 改变时间,ctime,元数据发生改变(元数据  文件大小 权限 )

cp

 多个文件只能复制到文件夹
-i 覆盖提醒
-p 保留文件属性(备份常用)
-a 完整保留文件属性包括连接文件
-u 差异复制
-v 可视化
-d:若来源档为链接档的属性(link file),则复制链接档属性而非文件本身;
-l:进行硬式链接(hard link)的链接档创建,而非复制文件本身;
-s:复制成为链接文件(symbolic link),亦即『捷径』文件;

rename 批量改名

rename 旧字符 新字符 目标文件
[root opt]# rename txt txt.bak *.txt
#把 txt 改成 txt.bak

find

find 目录 条件   
条件 -user/name/size/perm/inum/type/maxdepth/mindepth
处理动作   exec  命令 {}  目录  \;     ls    delete 
-o #或


思考 1024M 和 1G 一样么?
1024M 代表 1023M - 1024M 不包括1023
1G 表示 0G -1G 不包括0G
-size 10k 表示9k 到10k 且不包括9k
-size -10k 表示9k 以内 包括9k
-size +10k 表示10k 以上 不包括 10k

tar

tar [选项] ... 归档文件名  源文件
目录tar [选项] ... 归档文件名  [-C 目标目录]
-c:创建归档
-x:释放归档
-f:指定归档文件名称,必须在所有选项的最后
-z、-j、-J:调用 .gz、.bz2、.xz 格式工具进行处理
-t:显示归档中的文件清单
-C:指定路径
-p:打包时保留文件及目录的权限
-P:打包时保留文件及目录的绝对径

历史命令

管理/调用曾经执行过的命令
history:查看历史命令列表
history  -c:清空历史命令
!n:执行命令历史中的第n条命令
!str:执行最近一次以str开头的历史命令
[root@svr7 ~]# vim  /etc/profile
HISTSIZE=1000      #默认记录1000条
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值