什么是Shell

  • 链接Linux的桥梁
  • 是一个应用程序
  • 是一个解释器
  • 最常用的bash和sh

路径

  • 绝对路径:从根路径开始
  • 相对路径:从当前目录开始
  • 特殊路径:
   .  : 当前目录
   .. : 上级目录
   ~  : 家目录
   -  : 上一步目录

注:系统根指的是 /

查看当前系统的版本


cat /etc/redhat-release
# CentOS Linux release 7.9.2009 (Core)

cd

cd /opt                切换到opt目录下
cd                    cd后面不跟任何路径,默认切换到当前用户的家目录下面

tree

tree                显示当前目录的目录结构

bash解析器中的快捷键

Ctrl + C : 终止当前命令的操作
ctrl + d : 退出,相当于exit
ctrl + z : 杀死当前进程
ctrl + l : 清屏
ctrl + a : 跳转到行首
ctrl + e : 跳转到行尾
ctrl + r : 搜索历史
esc  + .  : 上一条命令最后一个参数
!$ : 也是获取上一条命令最后一个参数

wget

wget -o /etc/yum.repos.d/Centos-7.repo https://mirrors.aliyun.com/repo/Centos-7.repo        
# 将Centos-7的源下载到/etc/yum.repos.d/目录下
wget -o 链接地址                不指定路径默认为当前路径下

history
查看系统执行的命令历史。

  • 家目录下.bash_histroy文件是保存执行命令历史的文件。
history                            查看系统执行的命令历史
cat .bash_history                 查看执行命令历史文文件的内容

修改主机名

方式一:
hostnamectl set-hostname svr7            
bash                            重启终端
方式二:
echo svr7 > /etc/hostname
bash                            重启终端

重启与关机

reboot            立即重启
init 6            立即重启
shutdown -r 10                 10分钟后重启
shutdown -r 8:30             8:30重启

poweroff                立即停止系统,并且关闭电源
shutdown -h 0            立即关机(now)
shutdown -h 10                10分钟后关机

- 取消正在进行的关机或重启
showdown -c

目录文件结构

  • 淡蓝色指的是软连接(快捷方式)
  • 绿色指的是可执行文件
cd /                    切换到/下
ls -l                    查看/下的目录

bin ---> usr/bin            存放普通用户可执行的命令
sbin  ---> usr/sbin            存放超级管理员可执行的命令

boot                      系统启动文件

root                      超级管理员的家目录
home                       普通用户的家目录

lib                        32位使用的目录
lib64                    64位使用的目录

tmp                        系统文件目录,一般是第三方软件存放的目录,也是回收站目录

usr                        存放系统执行文件的目录,相当于windows中的C盘的windows目录

etc                        Linux系统配置的目录

dev                        Linux系统的设备目录(/dev/null    黑洞设备,只进不出)

srv                        物理设备产生的一些文件

sys                        硬件设备的驱动程序信息

proc                    虚拟文件系统,反映出来的是内核,进程信息或实时状态(临时信息)
/proc/meminfo: 内存信息          /proc/cpuinfo: cpu信息

run                        存放一些进程编号的目录

opt                     下载文件的目录

mnt                        相当于windows系统的USB

var    
1. 存放系统临时文件的目录
2. 存放系统日志的目录  
3. 系统运行时产生的文件    

lost+found
ext2/ext3的文件系统格式才会产生lost+found目录    孤儿文件
lost+found目录一般情况下时空的,当系统故障或者突然关机的时候,丢失的一些文件,在这里能找回,只有root用户才能打开。

Linux系统常用的配置文件

- /etc                            
/etc/sysconfig/network-script/ifcfg-*            网络配置文件
/etc/hostname                    系统主机名配置文件
/etc/resolv.conf                dns客户端配置文件
/etc/hosts                        本地域名解析配置文件
/etc/fstab                        系统挂载目录,开机启动挂载列表
/etc/passwd                        系统用户文件

文件管理

  • 文件的各种类型
 drw-------          d 代表目录
 -rw-------            - 代表普通文件
 lrw-------            l 代表软连接            
 prw-------            p 管道文件
 crw-------            c 设备文件(字符设备)打印机,终端(/dev)
 brw-------            b 存储设备硬盘(/dev/sda1)
 srw-------            s 套接字文件, 进程间通信 
  • 增 删 改 查 移动 权限
- 增 
· 目录
mkdir /dir         
mkdir -p /dir/a/b/c                 (-p)递归创建
tree /dir                查看dir下的目录结构
# /dir
# └── a
#     └── b
#         └── c

mkdir -pv /dir/A/B/C            (-v)打印出整个目录的创建过程
# mkdir: created directory ‘/dir/A’
# mkdir: created directory ‘/dir/A/B’
# mkdir: created directory ‘/dir/A/B/C’

-m 设置创建文件夹的权限


· 文件
touch a.txt b.txt c.txt                同时创建多个文件
touch {a..z}.txt                    创建a.txt , b.txt , ... z.txt        # {}必须是..
touch {abc,bcd,fgh}.txt                创建abc.txt , bcd.txt , fgh.txt
- 查
· 文件查询(ls)
ls -a /root                        查看影藏文件        
ls -l /root                        查看root目录下文件和目录属性
ls -i /root                        打印文件的索引号
ls -lh /root                    显示可读文件大小(kb)
ls -ld /root                    查看目录本身的属性
ls -F /root                        给文件添加标识符

· 查看一个文件的内容(cat)
cat -n /root/a.txt                显示内容并加上行号

· 查看文件开头(head)
head /etc/passwd                从头开始打印文件,默认打印前10行
head -n 2 /etc/passwd            打印前2行    
head -2 /etc/passwd                同上,打印前2行
head -c 100 /etc/passwd         打印前100字节的内容
head -c -100 /etc/passwd        去掉后100个字节的内容

· 查看文件结尾(tail)
tail /etc/passwd                从尾部开始打印文件,默认打印10行
tail -n 2 /etc/passwd            打印最后2行
tail -2 /etc/passwd                同上,打印最后2行
tail -c 100 /etc/passwd            打印最后100字节的内容
tail -f /opt/a.txt                实时监控文件新增内容(两个终端测试)

· 查看文件夹层级(tree)
tree                    显示目录结构
pwd                        查看当前目录绝对路径
- 修改(编辑)
vi/vim 编辑器,文本编辑工具(vim相当于vi的升级版)

vi/vim编辑器的编辑流程
1. 打开文件
2. 创建swp文件,用于临时存储文件修改内容
3. 选择输入模式进行修改内容
4. 进入末行模式,使用指令进行操作
5. 退出

· 输入模式
需要指定输入模式的方法
i : 在光标处之前插入内容
a : 在光标前之后插入内容
o : 在光标下一行输入内容
A : 在光标所在的行尾输入内容

· 保存内容
1. 按键盘上的Esc键    
2. 按冒号键进入末行模式    
3. 执行命令,对文本进行操作
4. w 保存当前编辑的内容      q 退出编辑器



-  命令模式
光标跳转到行尾
Shift + a 和 Shift + 4($)

光标跳转到行首
0键

删除一行
dd

删除多行
ndd      删除n行

复制一行
yy

复制多行
nyy      复制n行

粘贴
p(粘贴在光标的下一行)
P(粘贴在光标的上一行)

撤销
u        每按一次撤销一次

跳转到页尾
G

跳转到页首
gg

跳转到指定行
nG        跳转到n行



-  末行模式(:)
强制退出
q!                     修改内容不保存退出

显示行号
set nu

取消显示行号
set nonu

行内替换
s/old/new                    替换当前行第一个"old"
s/old/new/g                    替换当前行所有的"old"

区域内替换
n,m s/old/new/g                替换n-m行所有的"old"
% s/old/new/g                替换文件内所有的"old"        

文件操作
w /opt/a.txt                另存为其它文件(其他文件必须是新建文件)
r /opt/b.txt                读入其他文件内容
- 移动
mv a.txt /opt/                将当前路径下的a.txt移动到/opt/目录下
mv a.txt A.txt                重命名a.txt为A.txt(移动到当前文件夹中)
- 删除
rm /opt/a.txt                    不加选项需要确认是否要删除
# rm: remove regular file ‘/opt/a.txt’? y    
    
rm -f /opt/A.txt                    -f取消-i的意思,取消确认交互,直接删除。

-i增加删除前的提示
which rm                            查看rm的执行文件
# alias rm='rm -i'            
#     /usr/bin/rm
/usr/bin/rm b.txt                    使用执行文件可以直接删除
/usr/bin/rm -i B.txt                加了-i需要确认后才可以删除
# /usr/bin/rm: remove regular file ‘B.txt’? y

rm的简写
rm c.txt                
# rm: remove regular empty file ‘c’? y
\rm c.txt                             直接删除c.txt
# \rm 等价于 /usr/bin/rm

标签: Linux, 文件, 目录, etc, 总结, opt, rm, 补充, txt

相关文章推荐

添加新评论,含*的栏目为必填