美文网首页
linux重要命令

linux重要命令

作者: zhuleixiao666 | 来源:发表于2018-12-13 00:59 被阅读0次

1.find

find  /data -type -f    -----查找data文件夹下文件类型文件

find /data  -type f -name ‘dalei.txt’ ----根据文件名和文件类型查找

find /data -type f -name 'dalei.txt'  --exec  rm {} \.----表示对找到的对象采取什么动作

find . -type f -exec ls -l {} \;

find /test -type f -name "*.txt" | xargs rm -f-----删除所有txt文件

find -name '*.sh' |grep a------------文件名包含a的文件

find -name '*.sh' |xargs grep a------------文件内容包含a的文件

find -name '*.sh' |xargs cat ---------------打印所有符条件文件的内容

总结:

-type类型包含-f(file)、-d(文件夹)等

-name 文件名

2.touch

touch {1..10}.txt

3.grep过滤命令(linux三剑客grep/awk/sed之一,过滤需要的内容)

grep -v haha  'dalei.txt' ------取出不包含haha的其他行数据

grep haha 'dalei.txt'-----------取出包含haha的行数据

grep -n 'boss dev' README.md------------n显示行号

grep -A  -B -C

4.head(取出文件的前n行,默认是前十行)

head -n  1.txt  

5.tail(输出文件的后n行,默认是后10行 )

6.mkdir -p /a/b/c(连续创建命令)

7.tree(文件结构,yum install tree -y安装)

tree -L 1 -------------- 查看一级目录

8.alias和unalias

alias------查看别名

alias rr='rm -f'  ------- 设置别名

unalias rr  ----------  临时取消别名

定义别名永久生效方法:

/etc/profile ------- 全局生效

~/.bashrc  -------- 当前用户生效

9.更新补丁 yum install

10.sed(linux三剑客老二,stream editor流编辑器,实现对文件的增删改替换查,取行)

sed -n '20,30'p 1.txt  ---------   打印出20至30行的数据(p是打印)

sed -n '20'p 1.txt  ---------   打印第20行的数据

sed -i 's#boy#girl#g' 1.sh  --------- 将1.sh文件中boy替换为girl(s查找替换,g全局,-修改内容)

find /test -type f -name '*.sh'|xargs sed -i 's#boy#girl#g'

统一实验文本

1.1 增加

sed 在第二行后追加一行  sed 在第二行插入文本

a追加文本到指定行后

i插入文本到指定行前

sed -i -------修改文本内容

2.2 删除

d------删除指定的行

删除第一行 删除全部行

3.改

3.1 按行替换

c---------用新行取代旧行

新行取代第一行

3.2 文本替换

s--------单独使用时,将每一行中第一次匹配的字符串进行替换

g---------每一行进行全部替换

-i---------修改文件内容

实验前 单独使用s s和g组合使用

3.3 分组替换

4.查询

p--------输出指定内容,和-n结合使用

4.1 按行查询

输出第一行

4.2 按照字符串查询

按照字符串查询

4.3 混合查询

混合查询

11.awk(linux三剑客老大,过滤、输出内容,一门语言,主要用于处理日志、文本。NR代表行号)

awk 'NR>19&&NR<31' 1.txt  ---------   取出20至30行的数据(p是打印)

awk 'NR==1' 2.txt  -------------- 取出第一行数据

12.xargs

从标准输入(管道,输入重定向)获取数据。并将数据转换为命令行的参数。

xargs < 1.txt

13.cat

cat >>1.txt <<EOF------EOF为结束符

设置普通用户:

1.useradd dalei--------设置用户名

2.tail -l /etc/passwd

3.passwd dalei-------设置密码

4.su - dalei ---------角色切换

5.whoami ---------查看当前用户

打印系统信息

uname -a 

hostname---显示主机名

关机

shutdown 

重启

shutdown  -r now

reboot

关闭防火墙

/etc/init.d/iptables status---------临时关闭

chkconfig iptables off -----------开机也不启动

查看命令

which

批量创建文件

touch file{1..10}.txt

seq 1 10 

查看文件属性

ls -lhi 或 ls -li

第一列:索引节点inode

硬盘存储数据(房子住人),手电要分区(隔断),然后格式化创建文件系统(装修),最后存数据(住人)

Block是用来存储实际数据用的,例如照片视频等普通文件数据,而inode就是用来存储这些数据属性信息的(也就是ls -l的结果)

inode作用:

1.inode包含属性信息包括文件大小,属主,归属的用户组,读写权限,文件类型,修改时间,还包含想文件实体的指针的功能(inode节点--block的对应关系),但是inode唯独不包含文件名。

2.为每个文件进行信息索引

inode

总结inode与block

1.磁盘被分区格式化文件系统后,会分为inode和block两部分内容

2.inode存放文件的属性以及指向文件实体的指针,文件名不在inode里,一般在上级目录的block里

3.访问文件,通过文件名-------->inode--------->blocks

4.inode默认大小为256,block大小1,2,4k,默认是4k,注意,引导分区等特殊分区除外

5.一个block只能被一个文件使用,如果文件很小block很大,剩余空间浪费,无法继续被其他文件使用。

6.block不是越大越好,要根据业务的文件大小进行选择。

linux文件类型:

1,纯文本文件,可以用cat命令读文件,比如配置文件几乎都是这种类型

2,二进制文件,linux中的命令程序就是属于这种格式,例如cat命令就是一个二进制文件

3,数据格式文件

文件权限

链接

硬链接:ln  源文件   目标文件

硬链接通过索引节点inode进行链接,多个文件指向同一个inode

软链接:ln  -s 源文件   目标文件(目标文件不能事先存在),类似于windows快捷方式

硬链接 软硬链接的区别

对于目录不能创建硬链接,只能创建软链接

linux文件删除的原理:

文件删除原理

用户与组的关系

文件权限

添加组

groupadd    name----------添加组

useradd 用户名 -g  组名---------添加用户(主人)到该组(家)

useradd 用户----------主人及家庭成员以外的人

提示;如果用户提示存在就usermod -g 组名 用户名修改

cronb

crontab.guru - the cron schedule expression editor

crontab实例

D

定时任务生产应用问题10箴言:

1.系统环境变量导致定时任务执行问题

2.定时任务里的命令要使用绝对路径

3.脚本权限问题加/bin/sh

4.时间变量问题用反斜线\%转义,最好用脚本

5.>/dev/null 2>&1问题

6.定时任务规则之前加注释

7.使用脚本任务代替命令行执行定时任务

8.避免不必要的程序及命令输出

9.切到目标目录的上一级打包目标

10.定时任务脚本中的程序命令尽量使用全路径(和环境变量的识别有关)

注意 :

当程序在你所指定的时间执行后,系统会寄一封信给你,显示该程序执行的内容,若是你不希望收到这样的信,请在每一行空一格之后加上 > /dev/null 2>&1 即可

Rsync

本地或远程文件同步工具,类似ssh的scp命令

scp每次是全量拷贝,rsync可以增量拷贝

工作场景:

两台服务器之间数据同步(定时任务)即cron+rsync

reload

1,重新加载配置文件,使命令生效

2,不用配置文件直接提供挂载服务

pkill

pkill命令可以按照进程名杀死进程,也是直接杀死运行中的程序;如果您想杀掉单个进程,请用kill来杀掉。

rpm -qa

检查一个包是否被安装

#curl

curl -I-------------- 查看响应header信息

相关文章

网友评论

      本文标题:linux重要命令

      本文链接:https://www.haomeiwen.com/subject/wkwmhqtx.html