Linux基本命令

1. 终端中各字符含义

leeqb@GL552JX:~$ 

leeqb → 用户名

@ → 分隔符

GL552JX → 主机名

~ → 家目录(相对的)

: → 与$之间为当前所在目录绝对路径

$ → 普通用户,超级用户显示的是#,进入超级用户:命令前加sudo

2. 命令

命令的格式:

​ cmd opt arg
命令 操作 文件

1. cd(切换目录)

​ 1. cd 目录名(文件夹名)

#例:
leeqb@GL552JX:~$ cd public

​ 2.cd 路径

    1>绝对路径
        从根目录开始一层一层递进
    2>相对路径
        相对于当前目录
#例:
leeqb@GL552JX:~$ cd public/linux/

​ 3. cd //直接回到家目录

​ 4. cd . //当前目录

​ 5. cd .. //上一级目录

​ 6. cd - //上次打开的目录

2. ls(显示当前目录下的文件名)

​ ls //单独的来使用:查看当前目录下的文件名

​ ls 路径 //查看路径下文件名

​ ls -a //显示所有文件(包含隐藏文件,文件名以“.”开头为隐藏文件)

​ ls -i //显示文件inode号,通过文件inode号管理文件,在同一分区内文件

​ inode号不会重复

​ ls -l //以长格式显示信息

​ ls a*.conf //星号表示所有 ,显示所有以a开头后缀是conf的文件

​ ls 文件夹 -r //递归查看文件夹内容

#命令可以组合使用,如:
ls -ali  #会显示出以下信息:
drwxr-xr-x    28  root root 4096     2月    21    14:34     123
-rwxr-xr-x     1  root root 6473     2月    21    10:45     a.out

​ part.1 第一个字母为文件类型:

​ 7种文件类型

​ - 普通文件

​ d 目录文件

​ c 字符设备文件

​ b 块设备文件

​ p 管道文件

​ s socket网络套接字文件

​ l 链接文件(符号)

​ 链接方式

​ 1.硬链接

​ 2.符号链接

​ part.2 文件权限
​ (1.字符方式表示 2.数字方式表示(八进制))
​ (1.基本权限 2.高级权限)

            如:rwxr-xr-x  a.out
                rwx(前三个)    文件所有者的权限
                r-x  (中三个)  文件所属组的权限
                r-x  (后三个)  其他用户的权限

              各字母含义:                    数字表示

            r   可读                           4
            w   可写                           2
            x   可执行                         1
            -   无(该处没有权限)                 0
        

          用数字的方式描述a.out文件的权限是     755
          如果用数字的方式描述文件权限的话,范围是(000 ~ 777)

例:
​ rwxrw-r-- zack zack 1.txt
​ 权限 所属者 所属组 文件名
​ 1.zack这个用户访问1.txt文件有什么权限?
​ rwx
​ 2.假如tom用户和zack用户在同一组(zack组),tom这个用户访问1.txt文件有什么权限?
​ rw-
​ 3.jack这个用户访问1.txt文件有什么权限?
​ r--


​ part.3 文件连接数

​ part.4 文件所属者

​ part.5 文件所属组

​ part.6 文件大小

​ part.7 文件最后修改日期

​ part.8 文件名

自定义命令: alias 命令=“ ….自定义 ”

删除自定义命令 unalias 命令

\6. atime 最后一次被读的时间

​ mtime 最后一次修改的时间 (文件内容)

​ ctime 最后一次亚文件被修改的时间

\7. 创建文件: touch +文件名字

\8. 创建文件夹: mkdir 文件夹名

\9. 把文件搜有内容打印输出到终端中cat 文件名

\10. 删除:rm 名字

3.touch (创建普通性质文件)

​ 1.touch 文件名
​ 可以touch相同的文件名(普通性质文件/目录文件)
​ 修改的是最后修改时间,文件内容不变
​ 2.touch 文件名 文件名 ...
​ 可以创建多个文件
​ 3.touch {1..20}
​ 可以创建1-20个普通性质文件
​ (或者{a..z})
​ 4.touch 路径/文件名 //路径必须是已有的
​ 代表在该目录下创建文件

4.mkdir(创建目录文件)

​ 1.mkdir 文件名
​ 不可以mkdir相同的目录文件名,报错
​ 2.mkdir 文件名 文件名 ...
​ 可以创建多个文件
​ 3.mkdir {1..20}
​ 可以创建1-20个普通性质文件
​ (或者{a..z})
​ 4.mkdir 路径/目录文件名 //路径必须是已有的
​ 代表在该目录下创建目录文件

5.mkdir  文件夹/文件夹/文件夹   -p     //创建不存在的文件夹下的文件夹
5.cat(查看文件内容(普通文件))

​ cat 文件名
​ 把文件的所有内容打印输出到终端中
​ less
​ 从文件起始位置开始显示,鼠标可以翻阅,q退出
​ more
​ 从文件起始位置开始显示(有百分比),s可以向下翻阅b可以向上翻阅,q退出
​ head
​ 默认打印文件开头10行
​ tail
​ 默认打印文件末尾10行

6.cp(拷贝文件)

​ 1.cp 源文件 目标文件
​ 2.cp -r(拷贝目录时)
​ -r 递归的操作


​ 例:如果在50个文件中指向复制3个文件到其他目录
​ cp {fcodpamdpoa,mdslamda,snajda} ../xyz


7.diff(比较两个文件是否相同)

​ diff file1 file2
​ 1.如果没有任何提示,代表两个文件内容相同
​ 2.如果有提示,代表某一行不相同

8.mv(剪切/移动/改名字)

​ mv 源文件名 目标文件名
​ 1.mv 123 abc
​ 把123改成abc名字
​ 2.mv abc ..
​ 把abc剪切到上一级目录

9.rm(删除)

​ 1.rm filename
​ 删除filename,有询问
​ 2.rm filename1 filename2 filename3
​ 删除filename(1-3),有询问
​ 3.rm {a..z}
​ 删除a-z文件,有询问
​ 4.rm *
​ *该目录下的所有文件
​ *.c代表所有以.c结尾的文件
​ 5.rm -f(force强制)
​ 强制删除(删除时不询问)
​ 6.rm -r(递归的操作)

不要轻易使用
    rm -rf
    [root@localhost /]# rm -rf *   #删除系统下的所有文件
10.ln

​ 1.ln 源文件 目标文件
​ 创建硬链接文件
​ 源文件和目标文件共用同一个inode号
​ 任意修改其中一个文件另一个文件改变
​ 删掉源文件对目标文件没有影响

​ //硬链接是同一块内存的不同名字 没有产生新文件 rm只是删除硬链接数量

​ 2.ln -s 源文件 目标文件
​ 创建符号链接文件
​ 源文件和目标文件不共用一个inode号
​ 任意修改其中一个文件另一个文件改变
​ 删掉源文件对目标文件有影响

​ //相当于windows的快捷方式


​ 例:src为符号链接文件

  1. zack@test$ rm -rf src
    zack@test$ ls
    dest
    zack@test$ vim dest 
    zack@test$ ls
    dest  src
    zack@test$ cat src
    1
    2
    3
    

    ​ 代表当删掉源文件,打开符号链接文件,进行编辑,保存退出之后
    ​ 源文件又被创建了


11.grep 针对文件内容进行过滤
    grep 'root' /etc/passwd
    grep --color 'root' /etc/passwd
    grep --color '^root' /etc/passwd
    grep --color 'bash$' /etc/passwd
    grep 'failure' /var/log/secure
    #^查找的内容出现在行首
    #$查找的内容出现在行尾
12. ctrl+R

​ 关键词搜索命令历史记录

13. 自定义命令

alias 实际命令 = “ 自定义命令”

删除自定义命令 unalias 命令

14.文件压缩

压缩和解压缩
1.bz2格式
​ 压缩:bzip2 filename
​ 解压缩: bunzip2 filename.bz2
​ 特点:都是默认不保留原文件,不能针对于目录
2.gz格式
​ 压缩:gzip filename
​ 解压缩:gunzip filename.gz
​ 特点:都是默认不保留原文件,不能针对于目录
3.zip格式
​ 压缩:zip new.zip new1 new2 dir1 dir2
​ 解压缩: unzip new.zip
4.打包并压缩
tar
-c:创建包
-v:显示过程
-f:后跟包名
-x:解包
-r:向现有包中追加文件
-t:显示包中包含的文件
-z:压缩成gz格式
-j: 压缩成bz2格式
-C:指定解压位置

tar -cvf bao.tar file1 file2 dir1 dir2...
#将 file1 file2 dir1 dir2 打包进bao.tar
tar -tvf bao.tar
#显示包内所有文件的详细信息
tar -rvf bao.tar file3
#将file3追加进包bao.tar内
tar -cjvf bao.tar.bz2 file1 file2 dir1 dir2...
#将file1 file2 dir1 dir2...打包并压缩成bz2格式的文件
tar -czvf bao.tar.gz file1 file2 dir1 dir2...
#将file1 file2 dir1 dir2...打包并压缩成gz格式的文件
tar -xzvf bao.tar.gz
#将bao.tar.gz解压并解包
15.ubuntu下安装软件包

ubuntu默认是不支持用root用户登录的,也不提倡大家用root登录;
如果要完成一些需要root权限的操作,请使用sudo xxx执行;

(1)安装已经下载的deb包

如果已经下载了deb包,可以直接安装:

sudo dpkg -i xxx.deb

类似于redhat中用rpm -ivh安装rpm包;
不推荐这种安装方式,因为很可能会因为依赖的包没有提前装好而失败;

(2)通过联网方式安装软件包

在ubuntu中,强烈推荐采用联网方式安装:

sudo apt-get install xxx

//xxx为要安装的软件,如vim等

有时候可能会出现依赖方面的问题或者冲突,此时可以尝试:

sudo apt-get -f install

你可能感兴趣的:(Linux基本命令)