linux基本命令

来源:互联网 发布:网站数据库入侵 编辑:程序博客网 时间:2024/05/03 12:14

linux下的基本命令

命令分类:(linux下严格区分大小写)

    内部命令:shell代码中自己实现的一些命令

    外部命令:以文件的形式存储在磁盘(/bin /sbin /usr/bin /usr/sbin)

  如何区分是内部命令还是外部命令:type + 命令名

    cd is a shellbuiltin: 表示内部命令

    mount is/bin/mount:   表示外部命令

  如何查看命令的路径:

    which + 命令名

    如:whichcp

  注意:echo即使一个内部命令也是一个外部命令

 

  查看所有内部命令:man bash

--------------------------------------------

帮助命令:

  1、man

    格式:man+ 命令名

    如:man ls

    man都有那些类型:

    6.2版本:man1 man

    5.5版本:man7 man

 

       1      User Commands

       2      System Calls

       3      CLibrary Functions

       4      Devices and Special Files

       5      File Formats and Conventions

       6      Games et. Al.

       7      Miscellanea

       8      System Administration tools and Deamons

  1、普通用户命令

  2、系统调用函数库

  3、常用一些函数或者C库函数

  4、设备文件的一些说明

  5、配置文件与一些其他格式的文件

  6、游戏相关

  7、网络协议相关的命令

  8、系统管理员可操作的命令

  9、系统内核相关的文件

推出帮助命令:q

清屏:ctrl + l  ; clear

2、info:

    格式:info+ 命令名

    如:infocd

3、help:

    格式:(info+ 命令名)或者(命令名 --help)

    如:help cd

    helpecho  内部命令的帮助

    ls--help  外部命令的帮助

4、百度 谷歌

---------------------------------------------

基本命令:

tab键使用:自动补齐

  假若按一次无反映,则再按一次,显示出所有匹配的文件。

  鼠标滑动键的使用,可以实现复制。

--------------------------------------------

ls:查看当前文件夹下的所有文件和文件夹

  格式:ls[option] [目录文件]

    [option]

    -l:长格式显示

    -a:显示所有文件

    -A:显示所有文件(除.和..)

    -t:按最后修改的时间排序

    -S:按文件大小排序

 

-rw-r--r-- 1 root root    0  7月 2410:09 hh

drwxr-xr-x 2 root root 4096  7月 24 10:38 hhh

第一列第一个字符:文件的类型:

    -:普通文件

    d:目录(文件夹)

    c: 字符设备类文件

    b: 块设备文件

    s: 套链接子文件

    l: 链接文件

    p: 管道文件

第一列的2~10:表示权限位

    rwx r-x r-x

    权限位三位为一组,共三组

    第一组:表示自己的权限(拥有主)

    第二组:表示属组的权限

    第三组:表示其他用户的权限

其中:r表示读权限  w表示写权限  x表示执行权限 -无任何权限

    第二列:硬链接数 

        ln aaff  创建硬链接

        ln -s aaff  创建硬链接

    第三列:文件属主(拥有者)

    第四列:属组

    第五列:文件的大小

    第六列:最后修改的时间

    第七列:文件名

---------------------------------------------

cd:切换当前目录

    格式:cd目标目录

   

    注意:绝对路径和相对路径

        绝对路径从根开始

        相对路径从当前目录开始

    . 表示当前所在的目录

    .. 表示上级目录

    ~ 表示当前用户登录的家目录

    -  表示上一次所在的目录

      区别:cd/a 和 cd a的区别

-------------------------------------

pwd:查看当前所在目录的一个路径(绝对路径)

-------------------------------------

touch :新建一个文件

    如:toucha b   创建两个文件

    toucha{1,2,3}b{1,2} 创建多个文件

    touch"a{1,2,3}b{1,2}" 创建一个文件

stat a:查看文件的属性

Access: 2012-07-24 11:31:59.199370276 +0800

Modify: 2012-07-24 11:31:59.199370276 +0800

Change: 2012-07-24 11:31:59.199370276 +0800

 

atime:访问时间

ctime:修改时间(名字修改,权限修改)

mtime:修改时间(内容修改),同时也会修改atime ctime;

   touch一个存在的文件,则会修改此文件的mtime

-------------------------------------------------

rm:表示删除一个文件

    格式:rm[option] 目标名

    [option]

    -f  强制删除不提示

    -r  删除目录

    如:rm*  删除所有文件

        注意:不要根下:rm * -rf  XXXXXXX

                rm /-rf  XXXXXXX

----------------------------------------------

mkdir :创建一个目录

    格式:mkdir[option] 目录名

    [option]

    -p:在创建多级目录时,如果前一级目录存在,会自动创建

    -m:建立目录时指定权限

    区别:mkdir/a 和mkdir a  之间的区别

----------------------------------------------

rmdir:表示删除空的目录

    基本不用

---------------------------------------------

mv:移动文件或者改名

    格式:mv源文件 目标文件(路径)

    如:mvfile /test  表示移动文件

        mv file /test/file2  表示该民

        mv file1 file2   表示在当前路径下改名

-------------------------------------------

cp:文件拷贝

    格式:cp[option] 源文件  目标文件

    [option]

    -r:复制目录

    通配符:

        * 表示可能出现的任意字符

        ?表示可能出现的任意一个字符

    若文件夹下有相同的文件,如何在再次复制的时候不提示:/bin/cp  源文件  目标文件  或者\cp /etc/a* .

 

---------------------------------------------

cat:显示文件的内容

    格式:cat[option] 文件名

    [option]

    -n: 显示行号

    -b: 显示行号

        两者区别:b空行不显示

    -E: 结尾加$

    -A: 显示非打印字符 (tab键)

---------------------------------------

more:分屏显示文件内容

    more +5/etc/passwd   从第五行开始显示

    more -5/etc/passwd   每屏显示5行

----------------------------------------

less:分屏显示(通过方向键可以上下翻动)

    如:less/etc/passwd

----------------------------------------

head:

    head/etc/passwd  查看/etc/passwd前10行内容

    head -n20/etc/passwd  查看/etc/passwd前20行内容

-----------------------------------------

tail:

    tail/etc/passwd 查看/etc/passwd后10行内容

    tail -n20/etc/passwd 查看/etc/passwd后20行内容

-------------------------------------------

定义别名:

    aliasii="ls -i"  定义别名

    unaliasii        取消别名

用永久生效:

    vim ~/.bashrc

-----------------------------------------

|:管道

    用于将多个管道连接起来,前一个命令的输出作为后一个命令的输入

    例:ls /etc/  显示/etc/下的所有文件

    ls /etc/ | wc-l 显示/etc/下的有多少文件

    ls /etc/ |grep '^d'|wc -l 统计/etc/下有多少个目录

    如:cut-d: -f7 /etc/passwd | sort | uniq -c | sort -k1 -n

------------------------------------------

重定向:

    改变输入输出的方向

    标准输出:屏幕

    标准输入:键盘

输入输出代码表示:

    stdio   0   标准输入  默认键盘

    stdout  1   标准输出  默认屏幕

    stderr  2   错误输出  默认屏幕

  > :表示正确输出重定向(覆盖的方式)

    如ls a>a1

  2>:表示错误输出重定向

    如ls/ttt 2> a2

  ls a /ttt>a1 2>a2  表示正确输出a1 ,错误的放a2

  ls a /ttt&> a3   正确的和错误的都放在a3

 

  >>:输出重定向(追加的方式)

    如:echoAAAAAA >> a

 

输入:

  <<:

    如:cat<< aaa

  <:

    passwd tom< passwd

    /dev/null  空洞文件

----------------------------------------------

vim:文本编辑器

vi: 是vim低级版本

 

ed:最早的文本编辑器

sed:流媒体编辑器

vi:

emacs:

vim

-------------------------------

vim工作模式:

    一般模式:以vim直接打开的默认模式

    编辑模式:左下角由插入命令的字符

    命令模式:左下角无提示,按:进入命令模式

如何切换:

  一般模式切换到编辑模式:

    i I o O s S aA

    按esc

  编辑模式切换到命令模式:

    按esc 按:

--------------------------------

一般模式操作:

  删除:

    dd:删除一行

    ndd(如3dd):删除3行,n表示自然数

 

    x:删除光标所在行的字符

    nx:删除n个字符

 

    dw:删除一个单词

    ndw:删除n个单词

 

    d^:删除光标位置到行首

    d$:删除光标位置到行尾

 

    u:撤销前次的操作

    ctrl + r:取消撤销

------------------------------------------

复制:

  第一种方式:

    yy:复制一行

    nyy:复制多行

    :m,ny:复制m行到n行的文本到vim的缓冲区

    p:粘贴

  第二种方式(可视):

    方向键选中

    v 选中要复制的内容 c(cut剪贴)

    再把光标移动到目标位置,在一般模式下按p

 

    v 选中要复制的内容 y(copy 复制)

    再把光标移动到目标位置,在一般模式下按p

    可视化行 :V

    可视化块:ctrl+ v

        选中后,按r进行替换。

------------------------------------------------

移动:

    h:光标向左移动一位

    l:光标向右移动一位

    j:光标向下移动一位

    k:光标向上移动一位

    ^:光标移动到行首,第一个有效字符的位置

    0:光标移动到该行的行首,行的第一个位置

    $:光标移动到行尾

 

    H:将光标移动到该屏幕的顶端

    M:将光标移动到该屏幕的中间

    L:将光标移动到该屏幕的行尾

    gg:将光标移动到该文章的首行

    ngg:将光标定位到第n行

    G:将光标移动到该文章的结尾

    w:将光标移动到下一个单词

    b:将光标移动到上一个单词

    e:将光标移动到下一个单词,光标到下一个单词的词尾

 

    ctrl + u:将窗口向上移动半屏

    ctrl + d:将窗口向下移动半屏

    ctrl + f:将向前滚动一整屏

    ctrl + b:将向下滚动一整屏

------------------------------------------

编辑模式:

    i I a A o O sS

    i:光标的位置插入

    I:行首插入

    a:在光标后插入

    A:行尾插入

    o:下一行插入

    O:上一行插入

    s:删除光标处的字符插入

    S:清空光标行插入

    10i:出入一个单词,退出这种模式,则会自动做10次这样的动作。

-------------------------------------------

命令模式

  左下角有冒号(:)用来输入一些控制指令

    :w 保存

    :q 退出

    :W!强制保存

    :q!强制退出

    :wq保存退出

    :setnumber  显示行号

    :set nonumber取消行号

        如何永久修改

        vim~/.vimrc     (在vimrc中加入:set ts=n //则在vim下按下tab键相当于n个空格)

    shift +>  表示向右缩进tab位

    shift +<  表示向左缩进tab位

    =   自动对齐

    :r 读文件

        如:r/etc/passwd 不会覆盖掉源文件内容

    :w 写文件

    如::w/b.txt  保存根下

        :w b.txt  保存在当前目录下

    :split 水平切割

    :vsplit 垂直切割

        ctrl + w 窗口之间进行切换(不能在插入模式)

 

    vim -o ab.txt 水平打开多个文件

    vim -O ab.txt 垂直打开多个文件

    :wqa  关闭所有打开的文件

---------------------------------------------

查找替换

  查找:/ ?+ 查找的字符

    / 表示自上而下操作

    ?表示自下而上操作

    n 查看下一个匹配的字符串

    N 反向查找下一个匹配的字符串

  替换:

    格式 范围s/原子符/新字符/参数

    范围:

      1:第一行

      $: 做后一行

      %:全文

      1,$第一行到最后一行

   

参数:  g:全局替换(默认的是每一行的第一个)  c:确认替换  i:不区分大小写替换操作:s/root/admin/ 替换当前行的第一个字符串:s/root/admin/g 替换当前行的所有字符串:s/root/admin/gi 替换当前行的所有字符串,并且不区分大小写:m,ns/root/admin/g注意:在替换的时候对一些特殊的字符,要进行转义,比如/ $如::%s/\/root/admin/g 
如::%s/\/root/admin/g 


原创粉丝点击