Linux命令

Linux命令

一.目录处理命令

1. 查看文件:ls (list)

ls [选项] [文件或者目录]
    -a 显示所有文件,包括隐藏文件(Linux中隐藏文件是以.开头)
    -l 详细信息显示 (-lh 可以人性化显示,文件大小可以是k和M)

2.创建新目录:mkdir(make directories)

mkdir -p [目录名]
    -p 递归创建
    例:mkdir -p /tmp/a/b/c

3.切换目录:cd(change directories)

cd [目录]
cd ..      //返回上一级

4.显示当前目录:pwd(print working director)

pwd

5.删除空目录:rmdir(remove empty directories)

rmdir [目录名]

6.复制文件或目录:cp(copy)

cp -rp [原文件或目录] [目标目录]
    -r 复制目录
    -p 保留文件属性 (文件最后修改时间也会保留,不会更改)

7.剪切文件、改名:mv(move)

mv [原文件或目录] [目标目录]

8.删除文件:rm(remove)

rm -rf [文件或目录]
    -r 删除目录
    -f 强制执行

二.文件处理命令

1.创建空文件:touch

touch [文件名]

如果创建的文件名中存在空格则应该使用””引起来,

例:touch “program files”

2.显示文件内容:cat

cat [文件名]
    -n 显示行号
反向显示文件内内容:tac

3.分页显示文件内容(不可向上翻页):more

(空格)或f		翻页
(Enter)		换行
 q或Q			退出

分页显示文件内容(可向上翻页):less

向上翻页:PageUp
向上一行:上箭头
搜索:/搜索的内容      (按n向下找)

4.显示文件的前几行(默认显示前十行):head

head [文件名]
         -n 指定行数

显示文件的前几行(默认显示后十行):tail

tail[文件名]
    -n 指定行数

三.链接命令

1.生成链接文件(不加-s就是硬链接):ln

    ln -s [原文件] [目标文件]
        -s 创建软链接

(1)软连接特征:

  • 1)类似于windows快捷方式
  • 2)软链接的文件类型都是lrwxrwxrwx,具体执行权限看原文件
  • 3)文件大小很小,只是一个符号链接
  • 4)箭头指向原文件(day23.soft->day23.c)

(2)硬链接特征:

  • 1)拷贝cp -p +同步更新
  • 2)通过i节点识别(硬链接的i节点同原文件的相同)
  • 3)不能跨分区
  • 4)不能针对目录使用
    当原文件被删除时,软链接会显示文件不存在,硬链接还可以正常使用

四.权限管理命令

1.更改文件或者目录权限:chmod(change the permissions mode of a file)(只有所有者和root可以更改)

chmod [{ugoa}{+-=}{rwx}] [文件或目录]
        [mode=421] [文件或目录]
        -R 递归修改 (更改目录和目录下所有文件的权限)
例如:chmod u+x,o-r test.c
      chmod 755 test.c
操作权限文件目录
r读权限可以查看文件内容可以列出目录中的内容
w写权限可以修改文件内容在目录中创建、删除文件
x执行权限可以执行文件可以进入目录
  • 注意:删除一个文件,不是对其有写权限,而是对其所在目录有写权限。

2.改变文件或目录的所有者(只有root可以)

chown(change file ownership)

chown [用户] [文件或者目录]
例如:chown spy test.c   //改变文件test.c的所有者为spy

3. 改变文件或目录的所属组

charg

chgrp [用户组] [文件或者目录]
 例如:chgrp spy test.c   //改变文件test.c的所属组为spy

4.显示、设置文件的缺省权限

umask(the use file-creation mask)

umask [-S]
    -S :以rwx形式显示新建文件缺省权限
例如:umask -S

五、文件搜索 find

1. 文件搜索 find

find [搜索范围] [匹配条件]
例如:1.find /etc -name init
            -iname   //不区分大小写
             *name    //通配符,型号表示匹配所以字符
            ???name //准确查name前面有三个字符
            *:匹配所有字符
            ?:匹配单个字符

     2. find / -szie +204800    //在根目录下查找大于100M的文件
            +n:大于n  -n:小于n  n :等于n
            Linux:1数据块==0.5K

     3. find / -user spy    //在根目录下查找所有者为spy的文件
            -group 根据所属组查找

    4. find /etc -cmin -5    //在/etc下查找5分钟内被修改过属性的文件或者目录
            -amin    访问时间
            -cmin    文件属性
            -mmin    文件内容

    5.  -a 两个条件同时满足
        -o 两个条件满足任意一个即可
        -exec(-OK) 命令 {} \;     //对搜索结果执行操作,OK会询问操作
        例如:find /etc -size +163840 -a -size -204800
        //在/etc下查找大于80MB小于100MB的文件
        find /etc -name spy -exec ls -l {} \
        //在/etc下查找spy文件并显示其详细信息
    6. -type 根据文件类型查找
        f:文件  d:目录 l:软链接文件
       -inum 根据i节点查找

  1. 在文件资料库中查找文件local
local 文件名
例如:local spy

六、grep

作为linux中最为常用的三大文本(awk,sed,grep)处理工具之一,掌握好其用法是很有必要的。
首先谈一下grep命令的常用格式为:

grep  [选项]  ”模式“  [文件]

grep家族总共有三个:grep,egrep,fgrep。

常用选项:
  -E :开启扩展(Extend)的正则表达式。
  -i :忽略大小写(ignore case)。
  -v :反过来(invert),只打印没有匹配的,而匹配的反而不打印。
  -n :显示行号
  -w :被匹配的文本只能是单词,而不能是单词中的某一部分,如文本中有liker,而我搜寻的只是like,就可以使用-w选项来避免匹配liker
  -c :显示总共有多少行被匹配到了,而不是显示被匹配到的内容,注意如果同时使用-cv选项是显示有多少行没有被匹配到。
  -o :只显示被模式匹配到的字符串。
  --color :将匹配到的内容以颜色高亮显示。
  -A  n:显示匹配到的字符串所在的行及其后n行,after
  -B  n:显示匹配到的字符串所在的行及其前n行,before
  -C  n:显示匹配到的字符串所在的行及其前后各n行,context
模式部分:
  1、直接输入要匹配的字符串,这个可以用fgrep(fast grep)代替来提高查找速度,比如我要匹配一下hello.c文件中printf的个数:fgrep  -c  "printf"  hello.c

  2、使用基本正则表达式,下面谈关于基本正则表达式的使用:

    匹配字符:
      . :任意一个字符。
      [abc] :表示匹配一个字符,这个字符必须是abc中的一个。
      [a-zA-Z] :表示匹配一个字符,这个字符必须是a-z或A-Z这52个字母中的一个。
      [^123] :匹配一个字符,这个字符是除了1、2、3以外的所有字符。
      
      对于一些常用的字符集,系统做了定义:
      [A-Za-z] 等价于 [[:alpha:]]
      [0-9] 等价于 [[:digit:]]
      [A-Za-z0-9] 等价于 [[:alnum:]]
      tab,space 等空白字符 [[:space:]]
      [A-Z] 等价于 [[:upper:]]
      [a-z] 等价于 [[:lower:]]
      标点符号 [[:punct:]]
      
 		匹配次数:
      \{m,n\} :匹配其前面出现的字符至少m次,至多n次。
      \? :匹配其前面出现的内容0次或1次,等价于\{0,1\}。
      * :匹配其前面出现的内容任意次,等价于\{0,\},所以 ".*" 表述任意字符任意次,即无论什么内容全部匹配。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值