设为首页 收藏本站
查看: 1043|回复: 0

[经验分享] linux基础语法

[复制链接]

尚未签到

发表于 2019-2-17 13:04:20 | 显示全部楼层 |阅读模式
  1.文件详情
  权限表示法。是用10位字符来表示:
  第一位:是文件类型,有7种类型,常见的3种  -表示文件  d表示目录 l表示软连接(快捷方式)
后面9位,每3个字符为一组表示3种用户所拥有的权限,依次是文件所有者,所有者所在组,其他人
用户对文件的权限,这三位有每个字符依次是:
r读权限(read)
w写权限(write)
x执行权限
  例如
-rw-r--r--.
  第一位
2-4 3位,文件所有者权限
5-7所有者所在组权限
8-10其他人
.
-表示是文件类型
rw-可读可写
r--读权限
r--读权限
表示
  文件详情数据列表意义:
  文件权限
文件引用次数
文件所有者
文件所在组
文件大小
最后修改日期
文件名
-rw-r--r--.
1
root
root
1.2k
8月 21 06:23
install.log
  2.环境变量
1.查看环境变量
echo $PATH
2.一旦设置为环境变量,这路径变成了当前路径一样,和window环境变量一致
如: bash /root/jzk/hello.sh ,如果把/root/jzk设置为环境变量,则直接bash hello.sh即可
3.设置环境变量方法
环境变量
(1)当前用户有效
文件在~.bash_profile文件里
vim .bash_profile
  多个文件路径用:隔离开
保存退出,
执行命令,让环境变量生效
source .bash_profile
  (2)所有用户有效
所有用户有效的环境变量在
/etc/profile文件里,增加
  3.基础语法
  语法
说明
示例
文件和文件夹操作
  [root@jiangzengkui ~]#
root表示登录角色,jiangzengkui是电脑名  ~表示当前用户home目录,如root是/root目录,#表示超级管理员,$表示一般用户
  命令  [选项] [参数]
常见的命令模式。多个参数可以合并;简化写和完整写
rm -rf   等于rm -r -f
ls -a  -a等于--all
ls
查看目录或者文件信息
ls 选项[-alFR...]..... [文件或目录]
参数说明:
-a 显示所有文件,包含隐藏文件
-l  显示文件详细信息
-i  显示文件节点信息
-h 人性化显示文件大小,自动转换为kb或者m
  ls -alh 显示所有文件详细信息并且人性化显示文件大小
文件和目录前面可以加路径(相对和绝对路径)
pwd
显示当前所在绝对路径
  cd
切换目录路径
cd ~或者cd 回到当前用户的home目录
cd - 进入上一次命令是的目录
cd .. 进入当前目录的上一级目录
cd . 进入当前目录
  mkdir
创建一个目录
mdir [选项] 目录
-p 递归  创建多级目录,不加此选项会报错
目录可以是相对路径或绝对路径
mkdir jzk 当前路径创建一个目录
mkdir -p /tmp/test/test1  创建temp和下面的test1子目录
相对路径/绝对路径
相对路径只参照当前所在路径,.表示当前目录,..表示上级目录
绝对路径从跟目录进行查找,不受当前目录影响,所有文件和目录都可以加相对或者绝对路径
  rm
删除文件或目录
rm [-r -f] [ 删除文件或者目录]
-r 删除目录
-f 强制删除,如果不加这个参数,每个目录或者文件都会提问是否删除
rm  jzk/a.log
rm  -r /tmp/jzk
rm -rf /tmp/a
cp
copy文件或者目录
cp [选项] [原目录或者文件] [目标目录或者文件名]
选项:
-r copy目录
-p 复制文件属性,如最后修改日期
-d 链接文件(快捷方式)
-a等价于  -rpd
cp  -r jzk   jzk /tmp/aa  把jzk目录复制到/tmp/aa目录下,注意如果aa目录不存在,则自动创建aa
cp -a  jzk   jzk /tmp/aa 所有文件属性完全一致,如文件修改日期
cp -a t.log jzk/t.log    注意如何是copy文件,必须要写目标文件名
mv
剪切文件或者重命名
mv [原文件或者目录] [目标文件或者目录]
注意:没有选项
mv jzk /tmp/  把
touch
创建文件
touch [选项] [参数]
touch命令有两个功能:一是用于把已存在文件的时间标签更新为系统当前的时间(默认方式),它们的数据将原封不动地保留下来;二是用来创建新的空文件。
-a:或--time=atime或--time=access或--time=use  只更改存取时间;
-c:或--no-create  不建立任何文件;
-d: 使用指定的日期时间,而非现在的时间;
-f:此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题;
-m:或--time=mtime或--time=modify  只更该变动时间;
-r:  把指定文件或目录的日期时间,统统设成和参考文件或目录的日期时间相同;
-t:  使用指定的日期时间,而非现在的时间
touch /tmm/a.log  创建a.log的空文件
touch -m a.log   修改文件的变动时间
vi/vim
编辑文件
vim 文件名
1:进入编辑 touch a.cfg。进入的是 command mode模式

  • i键进入编辑模式
    3.Esc键退出编辑模式。
    4.在:键退出格式,退出 q!  退出不保存  wq!退出保存
    cat
    查看文件内容
    cat 文件名
    cat /tmp/t.log  输出t.log文件内容
    文件搜索
    查找一个文件
  locate
按文件名进行搜索
locate 文件名
模糊查询,查询包含输入文件名内容的文件,注意:会把与文件后缀隔离开
从数据库查询,在/var/lib/mlocate/mlocate.db,查询速度最快
数据一天自动更新一次,刚创建的文件查不到
updatedb  手动更新,则能查询到最新文件
注意:文件搜索不搜索/tmp/文件夹
局限:只能搜索文件名
locate a.cfg
updatedb
locate a.cfg
whereis
命令搜索命令
就是搜索linux系统命令
whereis [选项] 命令
-b 只搜索执行文件
-m 只搜索帮助文档
补充:whereis 我在哪  whois 我是谁  whatis 我是干什么的
whereis ls
whereis -b cat
which
命令搜索命令
which除看到文件位置,还可以看到这个命令的别名 whereis 加强版
which ls
which cat
find
多种参数的文件搜索模式
find [搜索范围] [搜索条件]
尽量避免搜索范围过大,如从/目录搜索
注意find是精确完全匹配,和locate不一样。find 如要用模糊查询,则要用到通配符
1.按照文件名搜索
-name 搜索文件名
-iname 不区分大小写
2.按照文件所有者搜索
-user   搜指定所有者的文件
-nouser 搜没有所有者的文件
  3.按照文件变化时间搜索
-[时间选项]+[-] 天数
-mtime 文件内容发生改变
-ctime 改变文件属性
-atime 文件访问时间
默认为天数
4.按照文件大小来搜索
find 路径   -size +[-] 大小
5.按照文件节点来搜索
find 路径  -inum  文件inode节点
  6.组合查询
-a 表示逻辑与 所有条件都满足
-o 表示逻辑或,之一条件满足即可
  7、输出查询结果文件用于文件处理
  用-exec 文件处理命令  {}\;
find /root -name install.log
locate install.log两者结果是有区别的
find /root -name install.log *等于locate install.log
find /root -iname test.log  不区分大小写
  find /root  -user root   搜索root拥有的所有文件
fint /root   -nouser 搜索没有user的文件
  find /root -mtime +10 10天前文件内容发生的改变的文件
find /root -mtime  -10 10天内文件内容发生的改变的文件
  find . -size -25k 搜索文件小于25k的文件
find /etc -size +2M 搜索大于2兆的文件,注意M大写
  find . -inum 134277  查找i节点为 134277 的文件
  find  /etc -size +20k -a -size -50k  查找大于20k小于50k的文件
  find  /etc -size +20k -a -size -50k -exec ls -l {}\;
查询结构用ls-l来显示
  find  /etc -size +20k -a -size -50k -exec rm-rf {}\;
删除查询出来的结果
grep
搜索字符串命令
查询一个文件(不)包含指定搜索内容所在行展示
grep [选项] 搜索字符串  指定文件
-i 忽略大小写
-v 排除指定的搜索内容
  显示的是字符所在的行
grep "size" anaconda-ks.cfg
显示anaconda-ks.cfg文件中包含size字符串的行
通配符

  • 任意内容 长度不限
    ?  任意一个字符
    []括号里任何一个之一
    find /root -name "ab*" ab开头的任意文件
    find /root -name "ab?"  ba开头的3个字符的文件
    find /root -name  "ab[c,d]" abc 和abd文件
    压缩与解压
    zip gz bz2
    tar.gz tar.bz2  5种常见的linux压缩格式
  zip
压缩文件或者文件夹
zip  压缩文件名   目标文件名
zip -r 压缩包名   目标文件目录
linux zip能在window系统通用
zip a.cfg.zip a.cfg   压缩文件
zip -r  jzk.zip jzk  压缩文件目录
zip a.cfg ./jzk/a.cfg.zip  把a.cfg压缩到。./jzk目录下的a.cfg.zip中
unzip
解压zip文件
unzip  压缩文件/目录
注意:没有解压文件名或者目录,linux压缩时可以指定压缩文件名及存放目录.
但解压时,是解压到以前文件存放位置及文件名(恢复原状,没有目录则创建),和压缩文件所在目录及文件名无关
unzip  jzk/a.cfg.zip
gzip
压缩gz格式的文件及目录
gzip 源文件   
注意:不加压缩文件名,自动生成压缩文件名:原文件.gz,原文件消失
gzip -c 源文件名 > 压缩文件名
注意:源文件不消失
gzip -r 原文件目录
注意:压缩文件目录里的所有文件,文件目录不压缩
gzip aa.cfg
gzip -c aaa.cfg > aaa-1.cfg.gz 保留原文件
gzip -r jzk  压缩目录里所有文件,目录不压缩
  gunzip
解压gz文件
gunzip 压缩文件
gunzip -r 压缩文件对应的目录
注意:gunzip解压后,就是压缩文件名对应的文件名,和zip不一样,压缩文件消失
解压目录 加-r
gunzip a.cfg.gz
gunzip  -r jzk
bz2
压缩bz2文件
bzip2  源文件  
压缩成bz2格式,源文件消失
bzip2 -k 源文件  保留原文件
注意:bzip2不能压缩文件夹
bzip2 a.cfg
bzip2 -k aa.cfg
  bunzip2
解压bz2文件
bunzip2 压缩文件
bunzip2 -k 保留压缩文件
  tar
文件打包命令
tar -cvf 打包文件名 源文件
-c  打包
-v 显示过程
-f 指定打包后的文件名
tar -cvf a.cfg.tar a.cfg   文件打包
tar -cvf  jzk.tar   jzk  目录打包
tar解包
tar文件解包命令
tar -xvf tar文件名
-x 解包
-v 显示过程
解压到当前目录下,解压后的文件或者目录名就是tar的名称
tar -xvf a.tar
tar.gz打包
tar -zcvf 压缩包名.tar.gz 源文件
-z 把tar转成tar.gz包




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-673589-1-1.html 上篇帖子: Linux简述 下篇帖子: linux命令之head
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表