Linux 基础命令及基本目录
一、网卡
1.网卡配置文件路径
/etc/sysconfig/network-scripts/ifcfg-eth0
配置文件:
TYPE=Ethernet # 以太网 快速以太网
BOOTPROTO=none # 获取IP地址的方式 1 none 2 static 3.dhcp(路由器 三层交换机 192.168.1.2-192.168.1.254)
NAME=eth0 # 网卡的名称 在系统中显示的名称
UUID=2ccba174-21d0-4cb4-810f-93b5e16d1768 # 设备的唯一标识 系统会为每个硬件设备 分配一个UUID作为设备的唯一标识
DEVICE=eth0 # 网卡的硬件名称
ONBOOT=yes # 自动启动 自动激活该网卡
IPADDR=10.0.0.200 # IP地址 类似家的地址 唯一的 公网IP(任意有网络的地方连接) 私网IP(局域网内连接) 扩展 公网IP 私网IP
PREFIX=24 # 子网掩码 决定了当前网络中可用的主机数量 24--> 10.0.0.1-10.0.0.254 255.255.255.0
GATEWAY=10.0.0.254 # 网关 类似于 楼宇的大门 想要上网 必须配置网关 不配置网关只能在局域网内发送数据
DNS1=223.5.5.5 # 域名解析协议 负责把域名解析成IP地址 什么是域名 www.bidu.com www.sina.com
可做简易配置:
TYPE=Ethernet
BOOTPROTO=none
NAME=eth0
DEVICE=eth0
ONBOOT=yes
IPADDR=10.0.0.200
PREFIX=24
GATEWAY=10.0.0.254
DNS1=223.5.5.5
2.重启网卡命令
systemctl restart network
systemctl stop network
systemctl start network
ifdown eth0 && ifup eth0
3.关闭selinux防火墙
getenforce #查看状态
setenforce 0 #关闭selinux
4.关闭NetworkManager服务
systemctl stop NetworkManager # 关闭NetworkManager服务
systemctl disable NetworkManager #禁止开机自启
二、基础命令
1.echo 输出
- 输出打印到屏幕
[root@oldboy-lnb ~]# echo awerqwerqwer
awerqwerqwer
-
先清后写内容
[root@oldboy-lnb ~]# echo oldboytest..... > hosts
[root@oldboy-lnb ~]# cat hosts
oldboytest..... 追加内容
[root@oldboy-lnb ~]# echo test............... >> hosts
[root@oldboy-lnb ~]# cat hosts
oldboytest.....
test...............
2. { } 生成序列
所有的命令都支持{} 序列 通配符
例如:
[root@oldboy-lnb ~]# echo {1..10}
1 2 3 4 5 6 7 8 9 10
[root@oldboy-lnb ~]# echo {a..z}
a b c d e f g h i j k l m n o p q r s t u v w x y z
[root@oldboy-lnb ~]# echo {a..f}
a b c d e f
[root@oldboy-lnb ~]# echo {01..10}
01 02 03 04 05 06 07 08 09 10
[root@oldboy-lnb ~]# echo {01..10..2}
01 03 05 07 09
[root@oldboy-lnb ~]# # 批量创建5个文件1.txt 2.txt 3.txt 4.txt 5.txt
[root@oldboy-lnb ~]# echo .txt
.txt
[root@oldboy-lnb ~]# echo {1..5}.txt
1.txt 2.txt 3.txt 4.txt 5.txt
[root@oldboy-lnb ~]# touch {1..5}.txt
[root@oldboy-lnb ~]# ll
total 20
-rw-r--r--. 1 root root 0 Nov 2 10:31 1.txt
-rw-r--r--. 1 root root 0 Nov 2 10:31 2.txt
-rw-r--r--. 1 root root 0 Nov 2 10:31 3.txt
-rw-r--r--. 1 root root 0 Nov 2 10:31 4.txt
-rw-r--r--. 1 root root 0 Nov 2 10:31 5.txt
[root@oldboy-lnb ~]# rm -f {1..5}.txt
[root@oldboy-lnb ~]# mkdir oldboy{1..2}
[root@oldboy-lnb ~]# ll
drwxr-xr-x. 2 root root 6 Nov 2 10:32 oldboy1
drwxr-xr-x. 2 root root 6 Nov 2 10:32 oldboy2
3.tree 树形结构目录
树形结构目录需要安装相应得yum文件: yum -y install tree
创建多级目录并使用树形结构显示:
[root@oldboy-lnb ~]# mkdir oldboy/oldboy{1..3}/{www,blog,bbs} -p
[root@oldboy-lnb ~]# tree oldboy
oldboy
├── oldboy1
│ ├── bbs
│ ├── blog
│ └── www
├── oldboy2
│ ├── bbs
│ ├── blog
│ └── www
└── oldboy3
├── bbs
├── blog
└── www
12 directories, 0 files
参数: -L -d
-L 深度等级
-d 只显示目录
[root@oldboy-lnb ~]# yum -y install tree
[root@oldboy-lnb ~]# tree /tmp/oldboy/
/tmp/oldboy/
└── alex
└── lidao
└── test
3 directories, 0 files
[root@oldboy-lnb ~]# tree /oldboy/
/oldboy/
└── alex
└── lidao
└── test
3 directories, 0 files
[root@oldboy-lnb ~]# tree -L 1 /
/
├── bin -> usr/bin
├── boot
├── dev
├── etc
├── home
[root@oldboy-lnb ~]# tree
.
├── oldboy
│ └── alex
│ └── lidao
│ └── test
└── test.bak
4 directories, 1 file
[root@oldboy-lnb ~]# tree -d
.
└── oldboy
└── alex
└── lidao
└── test
4 directories
4.挂载光驱 mount
mkdir /mnt/cdrom # 创建临时挂载点
mount /dev/cdrom /mnt/cdrom # 挂载光驱到挂载点
umount /dev/cdrom # 卸载光驱
5.查看磁盘使用情况
df -h
[root@oldboy-lnb Packages]# pwd #查看当前路径位置
/data/Packages
[root@oldboy-lnb ~]# mount /dev/cdrom /data #挂载光驱
mount: /dev/sr0 is write-protected, mounting read-only
[root@oldboy-lnb ~]# df -h #查看磁盘使用情况
Filesystem Size Used Avail Use% Mounted on
文件系统 总空间 已使用 剩余 占比 挂载点
/dev/sda3 19G 1.6G 18G 9% /
devtmpfs 476M 0 476M 0% /dev
tmpfs 487M 0 487M 0% /dev/shm
tmpfs 487M 7.6M 479M 2% /run
tmpfs 487M 0 487M 0% /sys/fs/cgroup
/dev/sda1 197M 105M 93M 54% /boot
tmpfs 98M 0 98M 0% /run/user/0
/dev/sr0 4.4G 4.4G 0 100% /data
6.关机和重启
shutdown # 在1分钟后关闭操作系统
halt # 直接关闭操作系统
shutdown -h now # 直接关闭操作系统
shutdown -h 5 # 系统在5分钟后关机 -h halt 关机
shutdown -c # 取消关机计划
shutdown -r # 在1分钟重启操作系统系统
shutdown -r now # 直接重启
poweroff # 直接关闭操作系统
init 0 # 直接关闭操作系统
reboot # 重启操作系统
init 6 # 重启操作系统
7.man命令帮助手册
help 查看bash的内置命令
内置命令 bash自带 #系统组成: Linux内核 GNU/bash 第三方软件
外置命令 自己安装相关的命令依赖包
8.pwd 查看当前所在路径
pwd 查看当前所在路径
例如:
cd /etc/mnt
pwd
/etc/mnt
9. cat 查看文件中的内容 或 文件合并
cat # 查看文件中的内容 /文件合并 / 显示菜单
语法格式:
cat 参数选项 文件/相对路径/绝对路径
选项仓库
-n 显示行数
-A 在结尾的位置加上$ 查看以什么结尾
文件合并?
cat可以同时查看多个文件
[root@oldboy-lnb ~]# cat oldboy.txt test.txt
aaaaaaa
bbbbbbbbbb
[root@oldboy-lnb ~]# cat oldboy.txt test.txt > all.txt # 合并文件
[root@oldboy-lnb ~]# cat all.txt
aaaaaaa
bbbbbbbbbb
[root@oldboy-lnb ~]# cat oldboy.txt
aaaaaaa
[root@oldboy-lnb ~]# cat test.txt
bbbbbbbbbb
10.ll 查看当前所有文件的详细信息
ll 等于 ls -l
11. touch 创建普通文件
touch # 创建普通文件 如果文件存在则会修改文件的时间戳 内容不变
12. mkdir 创建目录
mkdir # 创建目录 make directory
语法格式: mkdir [参数选项] 目录名称/带路径的
参数 -p
递归创建目录 如果目录不存在则创建 存在则不提示存在
删除目录的命令:
rmdir 目录名称
rm -r 目录名称
13.mv 移动文件
mv 移动 move remove 移除
语法格式:
mv 源文件 目标文件/路径
mv 从哪里来 到哪里去
mv 源文件 修改名称后的文件 # . 代表了当前的路径
.. 代表了上级目录
~ 代表家目录
mv 可以用于修改文件名称
[root@oldboy-lnb ~]# # 移动/tmp目录下的test.txt 到当前的路径改名为test.bak
[root@oldboy-lnb ~]# mv /tmp/test.txt test.bak
同时移动多个文件 # 最后一个必须为目录 且不能对所有的文件同时改名
[root@oldboy-lnb ~]# mv 1.txt 2.txt 3.txt 4.txt 5.txt /tmp/
[root@oldboy-lnb ~]# ll /tmp/
total 4
-rw-r--r--. 1 root root 0 Nov 2 09:30 1.txt
-rw-r--r--. 1 root root 0 Nov 2 09:30 2.txt
-rw-r--r--. 1 root root 0 Nov 2 09:30 3.txt
-rw-r--r--. 1 root root 0 Nov 2 09:30 4.txt
-rw-r--r--. 1 root root 0 Nov 2 09:30 5.txt
14.cp 复制文件
语法格式:
cp 源文件 目标文件/路劲/改名
cp 目录 目标文件/路径
参数
-r 复制目录及目录下的所有的内容
15.ls 显示当前的所有文件和目录
语法格式: ls 回车 显示当前的所有的文件和目录
ls 目录/文件 查看目录下的所有的文件 或者只查看文件是否存在
参数:
-l 列出目录下或者文件的详细信息
-d 查看目录详细信息
-r 逆序排序 按照文件的首字母 默认正序排序 a b c d
-t 按照时间进行排序
-rt 按照时间逆序排序
16. alias 查看别名
alias 查看别名 # 扩展
例子:
[root@oldboy-lnb ~]# alias vieth0="vi /etc/sysconfig/network-scripts/ifcfg-eth0" # 创建别名
[root@oldboy-lnb ~]# vieth0 #使用别名
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
DEFROUTE=yes
17.rm 删除文件或目录
rm remove 移除 删除 尽量使用mv替代rm命令
语法格式:
rm 文件/目录
参数:
-r 删除目录及目录下的所有内容
-f 强制删除不提示
-i 交互
[root@oldboy-lnb ~]# # 删除当前目录的test.bak
[root@oldboy-lnb ~]# rm test.bak
rm: remove regular empty file ‘test.bak’? y
[root@oldboy-lnb ~]# rm hosts
rm: remove regular file ‘hosts’? n
无法直接删除目录
[root@oldboy-lnb ~]# rm etc
rm: cannot remove ‘etc’: Is a directory
1.使用临时取消别名方式删除目录
[root@oldboy-lnb ~]# \rm -r etc
[root@oldboy-lnb ~]# cp -r /etc .
[root@oldboy-lnb ~]# ll
total 20
drwxr-xr-x. 79 root root 8192 Nov 2 10:49 etc
-rw-r--r--. 1 root root 337 Nov 2 10:26 hosts
drwxr-xr-x. 5 root root 51 Nov 2 10:37 oldboy
drwxr-xr-x. 2 root root 6 Nov 2 10:32 oldboy1
drwxr-xr-x. 2 root root 6 Nov 2 10:32 oldboy2
drwxr-xr-x. 3 root root 20 Nov 2 10:05 opt
drwxr-xr-t. 12 root root 4096 Nov 2 10:05 tmp
使用-f 强制删除
[root@oldboy-lnb ~]# rm -rf etc
[root@oldboy-lnb ~]# rm -rf oldboy{1..2}
[root@oldboy-lnb ~]# ll
total 8
-rw-r--r--. 1 root root 337 Nov 2 10:26 hosts
drwxr-xr-x. 3 root root 20 Nov 2 10:05 opt
drwxr-xr-t. 12 root root 4096 Nov 2 10:05 tmp
[root@oldboy-lnb ~]# alias cd="rm -rf"
[root@oldboy-lnb ~]# ll
total 8
-rw-r--r--. 1 root root 337 Nov 2 10:26 hosts
drwxr-xr-x. 3 root root 20 Nov 2 10:05 opt
drwxr-xr-t. 12 root root 4096 Nov 2 10:05 tmp
[root@oldboy-lnb ~]# cd opt
[root@oldboy-lnb ~]# ll
total 8
-rw-r--r--. 1 root root 337 Nov 2 10:26 hosts
drwxr-xr-t. 12 root root 4096 Nov 2 10:05 tmp
[root@oldboy-lnb ~]# cd tmp
[root@oldboy-lnb ~]# ll
total 4
-rw-r--r--. 1 root root 337 Nov 2 10:26 hosts
ps -axuf 查看进程
三 、目录结构: FHS
目录结构: FHS
/bin 存放普通二进制命令
/boot 系统引导文件
/dev 设备文件 磁盘 光驱
/etc 服务的配置文件
/mnt 系统设备临时挂载点 (想查看光驱的内容 就把光驱挂载到系统中某个目录下)
/opt 第三方软件默认安装的位置(jenkins)
/sbin 管理员的可运行的二进制命令
/tmp 临时存储数据的目录 类似windows的回收站
/usr 二级目录层次标准
/var 经常变化的数据文件存储的目录 日志..
Linux的目录结构:
1. 树形结构显示目录
2. 一
2. 一切皆文件
3. 硬件设备必须先挂载才可以使用
四、/etc/下的重要目录
/etc/重要目录
/etc/sysconfig/network-scripts/ifcfg-eth0 网卡配置文件
/etc/hostname 主机名
/etc/resolv.conf dns配置文件
/etc/hosts 存放着域名和IP地址的对应关系
/etc/issue 用户登录提示信息
/etc/motd 用户连接登录提示信息
/etc/inittab 系统运行等级
/etc/fstab 磁盘信息、开机自动挂载设备
/etc/rc.local 开机自动运行命令或者自动运行某个服务
/var 存放服务的日志文件
/proc
/usr