2.Linux介绍和基本命令操作

Linux目录简介

目录结构

在这里插入图片描述

各目录的作用

/bin: (binaries) 存放系统命令的目录,所有用户都可以执行。

/sbin: (super user binaries) 保存和系统环境设置相关的命令,只有超级用户可以使用这些命令,有些命令可以允许普通用户查看。

/usr/bin: 存放系统命令的目录,所有用户可以执行。这些命令和系统启动无关,单用户模式下不能执行。

/usr/sbin: 存放根文件系统不必要的系统管理命令,超级用户可执行。

/root: 存放root用户的相关文件,root用户的家目录。宿主目录超级用户。

/home/: 当前普通用户的文件夹,名字默认就是当前的用户 举例:/home/bihai。

/tmp: (temporary)存放临时文件。

/etc: (etcetera)系统配置文件。

/usr: (unix software resource)系统软件共享资源目录,存放所有命令、库、手册页等。

/proc: 虚拟文件系统,数据保存在内存中,存放当前进程信息。

/boot: 系统启动目录。

/dev: (devices)存放设备文件。

/sys: 虚拟文件系统,数据保存在内存中,主要保存于内存相关信息。

/lib: 存放系统程序运行所需的共享库。

/lost+found: 存放一些系统出错的检查结果。

/var: (variable) 动态数据保存位置,包含经常发生变动的文件,如邮件、日志文件、计划任务等。

/mnt: (mount)挂载目录。临时文件系统的安装点,默认挂载光驱和软驱的目录。

/media: 挂载目录。 挂载媒体设备,如软盘和光盘。

/misc: 挂载目录。 挂载NFS服务。

/opt: 第三方安装的软件保存位置,习惯放在/usr/local/目录下。

/srv: 服务数据目录。

常用命令

查看当前路径下的存在的文件和文件夹

  1. [root@hadoop01 ~]# ls

    查看存在的文件的文件名(不包括隐藏文件)

  2. [root@hadoop01 ~]# ls -l

    查看文件的详细信息,权限、所属用户、所属组、修改日期、文件名

    简写:ll

  3. [root@hadoop01 ~]# ls -a

    查看当前目录下的所有文件(包括隐藏文件)

  4. [root@hadoop01 ~]# ls -la

    查看当前目录下的所有文件(包括隐藏文件)的详细信息

帮助命令

  1. [root@hadoop01 ~]# help cd

    查看shell内置命令的帮助信息

  2. [root@hadoop01 ~]# man ls

    获取命令或配置文件的帮助信息

文件处理命令

cd

英文:change directory 命令路径:内部命令 执行权限:所有用户

  1. cd: 切换工作目录
  2. cd -: 回到上一次的操作所在位置
  3. cd ~: 回到用户家目录
  4. cd ./ : 当前目录
  5. cd …/: 回到上一级目录

pwd

英文:print working directory 命令路径:/bin/pwd 执行权限:所有用户

作用:显示当前工作目录

mkdir

英文:make directories 命令路径:/bin/mkdir 执行权限:所有用户

作用:创建新目录

-p 父目录不存在情况下先生成父目录(多层创建).

例子:[root@hadoop01 ~]# mkdir linux/test 如果目录linux不存在,则报错,使用参数-p即可自动创建父目录

touch

命令路径:/bin/touch 执行权限:所有用户

作用:创建空文件或更新已存在文件的时间

语法:touch 文件名

  1. [root@hadoop01 ~]# touch a.txt b.txt

  2. [root@hadoop01 ~]# touch {a.txt,b.txt}

    同时创建多个文件,注意:后面{}中,中间不能有空格

  3. [root@hadoop01 ~]# touch “program files”

    创建带空格的文件,注意:生产环境中,文件名,一定不要加空格

echo

命令路径:/bin/echo 执行权限:所有用户

作用:查看某些环境变量/给文件增加内容(将文件创建出来)

  1. [root@hadoop01 ~]# echo $PWD

    查看当前的路径

  2. [root@hadoop01 ~]# echo ‘haha’ > test1.txt

    将字符串haha添加到test1.txt里面,注意;会将文件原来的内容覆盖

  3. [root@hadoop01 ~]# echo ‘haha’ >> test1.txt

    将字符串haha追加到test1.txt中,不会覆盖原来的内容

cp

英文:copy 命令路径:/bin/cp 执行权限:所有用户

作用:复制文件或目录

-r -R recursive 递归处理,复制目录

-p 保留文件属性 (原文件的时间不变)

  1. [root@hadoop01 ~]# cp –r /etc/*

    将etc下的全部内容递归拷贝到当前的目录下

  2. [root@hadoop01 ~]# cp –r /ect/service /root/test/aa/bb

mv

英文:move 命令路径:/bin/mv 执行权限:所有用户

作用:移动文件或目录、文件或目录改名

rm

英文:remove 命令路径:/bin/rm 执行权限:所有用户

作用:删除文件

-r(recursive)删除目录,同时删除该目录下的所有文件

-f(force) 强制删除文件或目录 即使原档案属性设为唯读,亦直接删除,无需逐一确认

注意:工作中,谨慎使用rm –rf 命令。

重:vim编辑器

vim/vi是Unix / Linux上最常用的文本编辑器而且功能非常强大。

只有命令,没有菜单。

插入命令
  • a: 在光标后附加文本
  • A(shift + a): 在本行行末附加文本行尾
  • i: 在光标前插入文本
  • I(shift+i) : 在本行开始插入文本 行首
  • o: 在光标下插入新行
  • O(shift+o) : 在光标上插入新行
定位命令
  • :set nu 设置行号
  • :set nonu 取消行号
  • :n 到第n行
保存和退出命令
  • :w 保存修改
  • :w new_filename 另存为指定文件,如果文件不存在,会直接创建一个新的文件
  • :w >> a.txt 内容追加到a.txt文件中 文件需存在
  • :wq 保存修改并退出
  • shift+zz(ZZ) 快捷键,保存修改并退出
  • :q! 不保存修改退出(强制退出)
  • :wq! 保存修改并退出(文件所有者可忽略文件的只读属性)

注:不保存并退出 :q,有修改,但是修改后的内容是不保存的 :q!,有突发情况,导致窗口退出。修改文件之后,直接删除同名的.swp文件

搜索和替换命令
  • /string 向后搜索指定字符串
  • ?string 向前搜索指定字符串
  • :%s/old/new/g 全文替换指定字符串
  • :n1,n2s/old/new/g 在一定范围内替换指定字符串
使用替换命令添删注释
  • :% s/^/#/g 来在全部内容的行首添加 # 号注释 ^代表行首
  • :1,10 s/^/#/g 在1~10 行首添加 # 号注释

ln

英文: link 命令路径:/bin/ln 执行权限:所有用户

作用:产生链接文件

  1. [root@hadoop01 ~]# ln -s /etc/service ./service.soft

    创建文件/etc/service的软链接service.soft

  2. [root@hadoop01 ~]# ln /etc/service /service.hard

    创建文件/etc/service的硬链接/service.hard

注:源文件使用绝对路径;删除软连接,源文件还在

查看命令

cat

英文:concatenate 命令路径:/bin/cat 执行权限:所有用户

作用:显示文件内容,直接显示全部内容

  1. [root@hadoop01 ~]# cat /etc/services

    显示文件内容

  2. [root@hadoop01 ~]# cat -n /etc/services

    显示文件内容,并显示行号

  3. [root@hadoop01 ~]# cat -A /etc/services

    显示文件内容,包括隐藏的字符

more

命令路径:/bin/more 执行权限:所有用户

作用:分页显示文件内容

语法:more [文件名]

  1. 空格或f 显示下一页
  2. enter键 显示下一行
  3. q或Q 退出

head

命令路径:/usr/bin/head 执行权限:所有用户

作用:查看文件前几行(默认10行)

语法:head [文件名]

  1. [root@hadoop01 ~]#head -20 /etc/services

    显示文件前20行内容

  2. [root@hadoop01 ~]#head –n 3 /etc/services

    显示文件前3行内容

tail

命令路径:/usr/bin/tail 执行权限:所有用户

作用:查看文件的后几行

语法:tail [文件名]

  1. [root@hadoop01 ~]# head -n 100 /etc/services > config.log

    会直接用/etc/services里面前100行的数据导入conflg.log文件中,并覆盖其中的内容

  2. [root@hadoop01 ~]# head -n 100 /etc/services >> config.log

    会直接用/etc/services里面前100行的数据导入conflg.log文件中,并进行内容的追加

搜索查找命令

find

命令路径:/bin/find 执行权限:所有用户

作用:查找文件或目录

语法:find [搜索路径][匹配条件]

如果没有指定搜索路径,默认从当前目录查找

  1. -name按名称区分大小写查找 精准查找

[root@hadoop01 ~]# find /etc -name “init”

在目录/etc中查找文件init

  1. -iname按名称不区分大小写查找 不区分大小写

[root@hadoop01 ~]# find /etc -iname “init”

在目录/etc中查找文件init

  1. 模糊查询:

    • *: 匹配所有
    • ?: 匹配单个字符

    [root@hadoop01 ~]# find /etc -name “init???”

    在目录/etc中查找以init开头的,且后面有三位的文件,模糊匹配的条件,建议使用单引号或双引号括起来。如果*被转义,可使用单双引号括住查询条件,或者使用\\*。

  2. -size按文件大小查找

    以block为单位,一个block是512B, 1K=2block +大于 -小于 不写是等于

    [root@hadoop01 ~]# find /etc -size -204800

    在etc目录下找出小于100MB的文件100MB=102400KB=204800block

  3. -type按文件类型查找

    f 二进制文件 l 软连接文件 d 目录 c 字符文件

    [root@hadoop01 ~]# find /dev -type c

grep

命令路径:/bin/grep 执行权限:所有用户

作用:在文件中搜寻字符串匹配的行并输出

语法:grep [-cinv] ‘搜寻字符串’ filename

-c :输出匹配行的次数(是以行为单位,不是以出现次数为单位)

-i :忽略大小写,所以大小写视为相同

-n :显示匹配行及行号

-v :反向选择,显示不包含匹配文本的所有行。

  1. [root@hadoop01 ~]# grep ftp /etc/services

  2. [root@hadoop01 ~]# grep -v ^# /etc/inittab

    显示文件行首不带#号的行

  3. [root@hadoop01 ~]# grep -n “init”/etc/inittab

    显示在inittab文件中,init匹配行及行号

  4. [root@hadoop01 ~]# grep -c“init”/etc/inittab

    显示在inittab文件中,init匹配了多少次

  5. [root@hadoop01 ~]# find /root | grep a.txt

    管道的功能(过滤)

which

命令路径:/usr/bin/which 执行权限:所有用户

作用:显示系统命令所在目录(绝对路径及别名)

which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令

  1. [root@hadoop01 ~]# which ls

    出现下面的信息,是ls指令的详情,说明ls指令是存在的

  2. [root@hadoop01 ~]# which zs

    出现下面的信息,说明zs指令是不存在的

whereis

命令路径:/usr/bin/whereis 执行权限:所有用户

作用:搜索命令所在目录 配置文件所在目录 及帮助文档路径

  1. [root@hadoop01 ~]# which passwd

  2. [root@hadoop01 ~]#whereis passwd

  3. man 5 passwd

    查看/etc/passwd配置文件的帮助

磁盘的操作命令

df命令

作用:用于查看Linux文件系统的状态信息,显示各个分区的容量、已使用量、未使用量及挂载点等信息、看剩余空间

语法:df [-hkam][挂载点]

-h (human-readable)根据磁盘空间和使用情况 以易读的方式显示 KB,MB,GB等
-k 以KB 为单位显示各分区的信息,默认
-m 以MB为单位显示信息
-a 显示所有分区包括大小为0 的分区

du命令

作用:用于查看文件或目录的大小(磁盘使用空间)

语法:du [-ahs][文件名目录]

-a 显示子文件的大小

-h 以易读的方式显示 KB,MB,GB等

-s summarize 统计总占有量

  1. [root@hadoop01 ~]# du -a(all) /home

    显示/home 目录下每个子文件的大小,默认单位为kb

  2. [root@hadoop01 ~]# du -h /home

    以K,M,G为单位显示/home 文件夹下各个子目录的大小

  3. [root@hadoop01 ~]# du -sh /home

    以常用单位(K,M,G)为单位显示/home 目录的总大小 -s summarize

df命令和du命令的区别:

  • df命令是从文件系统考虑的,不仅考虑文件占用的空间,还要统计被命令或者程序占用的空间。
  • du命令面向文件,只计算文件或目录占用的空间。
  • 执行下面的命令查看区别:
    • [root@hadoop01 ~]# df –h /
    • [root@hadoop01 ~]# du –sh /

free

作用:显示系统内存的使用情况,包括物理内存、交换内存(swap)和内核缓冲区内存。

语法: free [-kmg]

-k 以KB为单位显示,默认就是以KB为单位显示

-m 以MB为单位显示

-g 以GB为单位显示

  1. [root@hadoop01 ~]# echo 1 > /proc/sys/vm/drop_caches

    清理缓存命令

打包压缩命令

gzip

英文:GNU zip 命令路径:/bin/gzip 执行权限:所有用户

作用:压缩(解压)文件,压缩文件后缀为.gz

gzip 只能压缩文件,不能压缩目录;不保留原文件

语法:gzip 文件

-d 将压缩文件解压(decompress)

解压使用gzip –d或者 gunzip

bzip2

命令路径:/usr/bin/bzip2 执行权限:所有用户

作用:压缩(解压)文件,压缩文件后缀为.bz2

语法:bzip2 [-k][文件]

注意: 在纯命令行系统中没有默认安装bzip2命令,需要手动安装 yum -y install bzip2.x86_64

-k 产生压缩文件后保留原文件(压缩比高)

-d 解压缩的参数(decompress)

解压使用bzip2 –d或者 bunzip2

zip

命令路径:/usr/bin/zip 执行权限:所有用户

作用: 压缩(解压)文件,压缩文件后缀为.zip,保留源文件

语法: zip 选项 [压缩后文件名称] [文件或目录]

注意: 在纯命令行系统中没有默认安装zip命令,需要手动安装 yum -y install zip

-r 压缩目录

  1. [root@hadoop01 ~]# zip services.zip /etc/services

    压缩文件

  2. [root@hadoop01 ~]# zip -r test.zip /test

    压缩目录

如果不加-r选项,压缩后的文件没有数据。

解压使用unzip ,注意如果解压时,已经存在与压缩文件同名的目录名,默认不会进行覆盖,如果选择Y,会进行覆盖

tar

命令路径:/bin/tar 执行权限:所有用户

作用:文件、目录打(解)包

语法:tar [-zcf] 压缩后文件名 文件或目录

-c 建立一个压缩文件的参数指令(create),后缀是.tar

-x 解开一个压缩文件的参数指令(extract)

-z 以gzip命令压缩/解压缩

-j 以bzip2命令压缩/解压缩

-v 压缩的过程中显示文件(verbose)

-f file 指定文件名,必选项

  1. [root@hadoop01 ~]# tar –cf tar –xf

    单独的打包 ,解包

  2. [root@hadoop01 ~]# gzip bzip2

    打包之后,进行压缩

  3. [root@hadoop01 ~]# tar –zcvf

  4. [root@hadoop01 ~]# tar -zxvf

    一步到位

  5. [root@hadoop01 ~]# tar -z

    以gzip打包目录并压缩 文件格式.tar.gz(.tgz)

  6. [root@hadoop01 ~]# tar -j

    以bzip2打包目录并压缩 文件格式.tar.bz2

最常用: tar + gzip

  1. [root@hadoop01 ~]# tar –zcvf

    压缩

  2. [root@hadoop01 ~]# tar –zxvf 解压

date

  1. date命令是显示或设置系统时间与日期。

  2. 查看系统时间直接使用 date

  3. 以自定义的方式显示系统时间: date +’%Y-%m-%d %H:%M:%S’

    注意:+与字符串之间不能有空格,与date之间要有空格

  4. 设置时间(注意:最好不要随意的设置,特别是不要随意的同步bios,造成系统的时间混乱)

    [root@hadoop01 ~]# date -s “2015-5-8 19:48:00”

  5. 同步到bios,重启之后才能继续生效(不建议使用)

    [root@qianfeng01 ~]# hwclock -w

系统关机命令

关机命令:shutdown

  • shutdown -h now 立即关机
  • shutdown -h 20:30 定时关机

重启命令:reboot

  • reboot -h now 立即重启

Linux的快捷键命令

  1. 善于查看man help等帮助文档
  2. 利用好Tab键 自动补全
  3. 掌握好一些快捷键
  4. ctrl + c(停止当前进程)
  5. ctrl + z 挂起当前进程,放后台
  6. ctrl + r(查看命令历史) history
  7. ctrl + l(清屏,与clear命令作用相同)
  8. 对当前命令行的操作:
  9. 方向箭头 上 下 可以查看执行过的命令并再次使用
  10. ctrl + a 行首 ctrl + e 行尾 ctrl+d 清除当前的字符
    系统时间: date +’%Y-%m-%d %H:%M:%S’

注意:+与字符串之间不能有空格,与date之间要有空格

  1. 设置时间(注意:最好不要随意的设置,特别是不要随意的同步bios,造成系统的时间混乱)

    [root@hadoop01 ~]# date -s “2015-5-8 19:48:00”

  2. 同步到bios,重启之后才能继续生效(不建议使用)

    [root@qianfeng01 ~]# hwclock -w

系统关机命令

关机命令:shutdown

  • shutdown -h now 立即关机
  • shutdown -h 20:30 定时关机

重启命令:reboot

  • reboot -h now 立即重启

Linux的快捷键命令

  1. 善于查看man help等帮助文档
  2. 利用好Tab键 自动补全
  3. 掌握好一些快捷键
  4. ctrl + c(停止当前进程)
  5. ctrl + z 挂起当前进程,放后台
  6. ctrl + r(查看命令历史) history
  7. ctrl + l(清屏,与clear命令作用相同)
  8. 对当前命令行的操作:
  9. 方向箭头 上 下 可以查看执行过的命令并再次使用
  10. ctrl + a 行首 ctrl + e 行尾 ctrl+d 清除当前的字符
  11. ctrl + k 清除光标后面的内容 ctrl+ w 清除光标前面的单词
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值