linux基础学习笔记1_基础命令

一、基本命令

1、cd 改变路径 (.当前目录 ..上级目录 - 上次目录 ~ 用户目录)
which 查看命令源文件所在目录

2、env 显示所有环境变量,
man,help,info,--help [命令] 查看命令帮助

2、pwd 查看当前路径 -P 查看物理路径(非链接路径)

3、whoami 查看当前登录用户

4、mkdir 新建目录
-p递归创建目录,不提示目录是否存在,循环向下创建所有层级目录,如果存在就会忽略。
-m 指定创建文件夹的权限
-v 显示打印创建过程信息
mkdir -p {a..c}{1..2} 创建a1,a2,b1,b2,c1,c2文件夹

5、rmdir 删除空目录
rm 删除文件或目录 (可加 -rf)
-f:不管目录下的文件存在不存在,都不给予提示
-r:删除此目录下的所有文件,但是此目录不删除

6、touch 创建文件或更新文件时间戳。文件存在则更新时间戳。
-a 改变文件时间戳。
touch {a..c}{1..2}.txt 创建a1.txt,a2.txt,b1.txt,b2.txt,c1.txt,c2.txt文件夹

7、mount 挂载设备
(如:mount /dev/cdrom /mnt/cdr 把光驱挂载点设置为/mnt/cdr目录)
mount参数:ro(只读)、rw(读写)、usrquota(用户配额)、remount(再次挂载)
-t 设备格式 -o读写方式
(如:mount -t vfat -o rw /dev/sdb1 /win以读写方式将设备/dev/sdb1挂载到/win目录)
/etc/fstab 挂载记录文件

8、umount 移除设备挂载点 (如:umount /mnt/cdr

9、df 查看设备挂载点,磁盘占用空间
-h选项,可读性高的格式输出

10、uname -a 查看系统完整版本 , -r 查看内核版本 -m 查看系统是版本32 or 64
-n查看主机名
cat /etc/redhat-release 查看CentOS版本

11、su 切换用户
passwd修改密码
adduser增加用户
userdel -r 用户名

12、ps -aux | less 进程查看,加less可以上下分页查看

13、ls 列出目录文件
-l 列出详细的文件信息
-t 按修改时间排序
-r 倒序
-a 列出所有文件,包含隐藏文件
-F 给不同文件加不同标识
-p 给目录文件结尾加/
--color=auto 给过滤的内容加默认颜色

14、cat 查看文件 cat 1.txt 2.txt >new.txt合并两个文件

15、xargs

16、mv 移动文件或目录

17、cp 拷贝文件,
-r 递归拷贝目录及文件
-p 保持文件属性

18、find 路径 查找文件
-type 文件类型(f文件,d目录,b块设备,l符号链接,c字符文件,s socket)
-name 文件名
-mtime n n表示第n天,+n表示n天之前,-n表示最近n天。
-a and,并且;-o or,或者; 取反。
find /log -type f -name "a*.log" -mtime +10 |xargs rm -f(删除/log目录下面a开头的10天之前的.log文件)

19、grep 筛选
-i 忽略大小写
-v 除外
grep -v abc a.txt a.txt除含abc之外的行
grep 20 -A 10 a.txt 匹配打印a.txt的第20-30行,即匹配20行和20行之后的10行
grep 30 -B 10 a.txt 匹配打印a.txt的第20-30行,即匹配30行和30行之前的10行
grep 25 -C 5 a.txt 匹配打印a.txt的第20-30行,即匹配25行和25行前后各5行

20、head -n 文件名 读取文件前n行,不加参数默认前10行
tail -n 读取文件后n行,不加参数默认后10行

21、tree 显示目录树结构
yum install tree -y 安装tree程序包

22、shutdown -h now 关机
shutdown +10 '"system will shutdown after 10 minutes" 十分钟后关机并向登录用户发出提示
halt 关机命令 实际调用的是shutdown -h 关闭系统
halt -p 关闭系统并切断电源
poweroff 相当于 halt -p
shutdown -rreboot 重启
systemctl hibernate 保存系统状态关机到power-off状态。

23、alias 查看或创建命令别名。unalias 删除命令别名
/cp /bin/cp 命令前加/或用命令全路径可以逃避命令别名
别名文件目录:~/.bashrc/root/.bashrc

24、seq sequence序列
seq 2 3 15 打印从2-10的序列值,间隔等差3 即:2 5 8 11 14

25、sed 流编辑器,实现对文件的增删改替换查。
-n 取消默认输出
-i 修改文件内容
-e 允许多项编辑
p打印
s查找并替换,用一个字符串替换成另一个
gs联合使用,表示对当前行全局匹配替换。
#是分隔符,可用/@等替换。
sed -n '2,10'p a.txt 打印a.txt第2-10行。
sed -n '2'p a.txt 打印a.txt第10行
sed -n '$'p a.txt 打印a.txt最后一行
sed -i 's#klh#www#g' a.txt 把a.txt里面的klh替换成www。不加-i 只替换打印输出,不改变文件内容。

应用1:把/log目录下面的所有.log文件里面的abc字符串替换成www字符串:
find /log -type f -name "*.log" |xargs sed -i 's#abc#www#g'
sed -i ‘s#abc#www#g’ `find /log -type f -name “*.log”` 在 ` `之间的内容先执行

26、awk 过滤,输出内容。属于一门语言。
NR代表行号
-F ":"以冒号分隔
$n 第n行,$0 一整行,$NF 最后一行
print $2 打印第2行
awk 'NR>=2 && NR<=10' a.txt 打印a.txt第2-10行。&&并且 ==赋值

27、rpm -ivh 软件包名 安装rpm软件包
rpm -e 软件名 卸载rpm软件,注意是软件名,不是软件包名
-qa 列出安装的软件包
-qi 列出软件包描述信息
-ql 列出软件包文件信息
-qf 查找指定文件属于哪个RPM软件包
-Va校验所有的 RPM软件包,查找丢失的文件
-i 安装软件
-t 测试安装,不是真的安装
-p 显示安装进度
-f 忽略任何错误
-U 升级安装
-v 检测套件是否正确安装
-q 查询软件包是否安装

28、netstat 网络命令
-r 显示路由表
-a 所有sockets
-l 显示监听服务sockets
-n 不解析进程名
-t tcp
-u udp
-p 显示sockets的进程pid/name

29、history 查看历史命令记录
-c 清除所有历史
-d 删除指定记录

30、export 设置变量
export HISTSIZE=10 设置保存历史记录10条
export HISTFILESIZE=5 设置保存历史记录文件~/.base_history记录5条。
export TMOUT=10 设置10秒后退出当前登录账号
设置的变量永久生效可以追加到/etc/profile文件里面:
echo 'export HISTSIZE=10' >>/etc/profile
source /etc/profile 使配置生效

31、ln [参数][源文件或目录][链接文件或目录] 建立链接
-s 软链接(符号链接)
-n 把符号链接视为一般目录
-f 强制执行
-i 交互模式,文件存在则提示用户是否覆盖
-b 删除,覆盖以前建立的链接
-v 显示详细的处理过程
-d 允许超级用户制作目录的硬链接

32、unset 删除变量或函数
-f仅删除函数
-v仅删除变量

二、Linux磁盘分区
hd(IDE接口硬盘)、sd(scsi接口硬盘)
sda1:第一个硬盘第一分区
sdb3:第二个硬盘第三分区
数字1-4表示主/扩展分区 5之后表示逻辑分区

  常规分区方案:数据不是贴别重要的业务(集群某个节点)
  /boot  (引导分区)  200M  主分区。
  swap  (交换分区)  内存1.5倍,最多8G-16G即可。
  /          (根分区)  剩余所有空间。
  数据重要分区方案:
  /    100-200G
  /data  剩余所有
  特大网站方案,门户(产品线多,需求不同):
  /     100-200G   剩余的需要时候再分

/etc/fstab 开机要挂载的文件系统的一个文件。

三、Linux控制台
Linux用户允许用户同时打开6个虚拟控制台(tty1~tty6),每个控制台可以不同用户登录,运行不同程序。
文本模式下可以Alt+(F1~F6)组合键切换控制台
图形模式下可以Ctrl+Alt+(F1~F6)组合键切换控制台

三、Linux运行级别
init
0:关机
1:单用户
2:多用户,没有网络
3:多用户,有网络
4:系统使用保留给用户
5:图形界面
6:系统重启
runlevel 查看运行级别。
/etc/inittab 修改initdefault 行id:5:initdefault: 重启切换到runlevels 5级别
CentOS7 使用systemctl来设置启动级别
multi-user.target(多用户目标):类似级别3
graphical.target(图形目标):类似级别5
systemctl get-default 查看当前默认级别
set-default graphical.target 设置级别5:该命令把
符号连接/etc/systemd/system/default.target指向/etc/systemd/system/graphical.target

四、常用命令行快捷键
tab 命令或目录等补全
ctrl+a 光标移到首
ctrl+e 光标移到尾
ctrl+u 剪切到首
ctrl+k 剪切到尾
ctrl+y 剪切内容粘贴
ctrl+c 中断任务或删除行
ctrl+l 相当于clear清屏
ctrl+z 暂停终端运行的任务
ctrl+r 搜索历史命令
ctrl+d 退出命令行
!! 执行上一条命令
!nt 执行最近以nt开头到命令
!num 执行历史命令列表第num条命令

五、centos7更新yum源
wget安装:yum -y install wget
1、配置下centos的DNS
vi /etc/resolv.conf
nameserver 114.114.114.114
nameserver 8.8.8.8
2、备份下原来的yum源
cd /etc/yum.repos.d/
cp CentOS-Base.repo CentOS-Base.repo.bak
3、更新yum源
163:
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.163.com/.help/CentOS7-Base-163.repo
ailiyun:
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
epel源:
yum -y install epel-release

yum clean all
yum makecache

六、Linux安全
1、清除系统版本显示
清空>/etc/issue>/etc/issue.net文件。
2、修改主机名
hostname srv1 主机命名srv1
/etc/sysconfig/network文件修改永久生效

七、网络
1、网卡配置路径:
/etc/sysconfig/network-scripts/ifcfg-eth*
ifdown eth1;ifdup eth1 停止/启动指定网卡
systemctl restart netwok 重启所有网卡
2、DNS配置文件路径
/etc/resolv.conf(网卡配置dns地址会覆盖该文件dns地址)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值