Linux的简单介绍和基础命令(下)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux的简单介绍和基础命令(下)相关的知识,希望对你有一定的参考价值。
三、Linux的目录结构
树形目录结构
/etc 管理员的家目录
/home 普通用户家目录
/bin 所有用户的命令文件目录
/sbin 管理员命令文件目录
/boot 启动分区(grub启动菜单,压缩内核等)
/usr 应用程序目录
/etc 配置文件目录
/var 可变长文件目录(日志)
/dev 设备文件目录(磁盘,光驱)
/tmp 临时文件
/proc 硬件信息(CPU 内存)
/lib 服务管理文件(systemctl)
查看文件内容命令
cat [] 文件名 ... :查看文件内容
more [] 文件名 .. :全屏方式分页显示文件内容
less [] 文件名 ... :more命令的扩展 END 可以查找 (man less进行查看,这边不是非常方便演示效果)
head 看文件开头一部分内容(默认为10行)
tail:看文件尾部的内容(默认10行)
[root@lokott hello]# cat ifcfg-ens33
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="0d6ffef5-693f-4d48-88b5-d2e1a66cf9c4"
DEVICE="ens33"
ONBOOT="yes"
[root@lokott hello]# more ifcfg-ens33
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="0d6ffef5-693f-4d48-88b5-d2e1a66cf9c4"
DEVICE="ens33"
ONBOOT="yes"
root@lokott hello]# head ifcfg-ens33
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
[root@lokott hello]# tail ifcfg-ens33
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="0d6ffef5-693f-4d48-88b5-d2e1a66cf9c4"
DEVICE="ens33"
ONBOOT="yes"
统计文件内容
wc(默认全部统计)
- -l :统计行数
- -w:统计单词统计数
- -c:统计字节数
[root@lokott hello]# cat 5.sh
#!/bin/bash
read -p "please input a ip address!" ip
ping -c1 $ip &>/dev/null
if [ $? -eq 0 ]
then
echo "$ip is up."
else
echo "$ip is down"
fi
[root@lokott hello]# wc -l 5.sh
9 5.sh
[root@lokott hello]# wc -w 5.sh
30 5.sh
[root@lokott hello]# wc -c 5.sh
147 5.sh
[root@lokott hello]#
检索和过滤文件内容
grep命令:在文件中查找不显示包含指定字符串的行
- ? grep [options] PATTERN [FILE...]
- ? grep [options] [-e PATTERN | -f FILE] [FILE...]
- -i :忽略大小写
- -v:反转查找,输出与查找条件不相符的行
[root@lokott hello]# grep -i up 5.sh
echo "$ip is up."
[root@lokott hello]# grep -v ‘bash$‘ /etc/passwd
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
polkitd:x:999:998:User for polkitd:/:/sbin/nologin
abrt:x:173:173::/etc/abrt:/sbin/nologin
libstoragemgmt:x:998:996:daemon account for libstoragemgmt:/var/run/lsm:/sbin/nologin
rpc:x:32:32:Rpcbind Daemon:/var/lib/rpcbind:/sbin/nologin
colord:x:997:995:User for colord:/var/lib/colord:/sbin/nologin
saslauth:x:996:76:Saslauthd user:/run/saslauthd:/sbin/nologin
rtkit:x:172:172:RealtimeKit:/proc:/sbin/nologin
pulse:x:171:171:PulseAudio System Daemon:/var/run/pulse:/sbin/nologin
chrony:x:995:991::/var/lib/chrony:/sbin/nologin
rpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologin
nfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin
ntp:x:38:38::/etc/ntp:/sbin/nologin
tss:x:59:59:Account used by the trousers package to sandbox the tcsd daemon:/dev/null:/sbin/nologin
usbmuxd:x:113:113:usbmuxd user:/:/sbin/nologin
geoclue:x:994:989:User for geoclue:/var/lib/geoclue:/sbin/nologin
qemu:x:107:107:qemu user:/:/sbin/nologin
radvd:x:75:75:radvd user:/:/sbin/nologin
setroubleshoot:x:993:988::/var/lib/setroubleshoot:/sbin/nologin
sssd:x:992:987:User for sssd:/:/sbin/nologin
gdm:x:42:42::/var/lib/gdm:/sbin/nologin
gnome-initial-setup:x:991:986::/run/gnome-initial-setup/:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
apache:x:48:48:Apache:/usr/share/httpd:/sbin/nologin
root@lokott hello]# grep -v ‘bash$‘ /etc/passwd | wc -l //将结果写入管道后用wc命令显示结果数量
40
[root@lokott hello]#
Ctrl + r 可以进行命令的搜索
[root@lokott hello]# vim ifcfg-ens33 用快捷键!进入下面的模式输入之前敲击过的命令会自动查找
(reverse-i-search)`v‘: vim ifcfg-ens33
压缩命令
gzip命令和bzip2命令:制作压缩文件、解压缩文件
- -9表示的是高压缩比
- -d进行解压缩
[root@lokott hello]# ls
0.sh 5.sh ifcfg-ens33 linux
[root@lokott hello]# gzip -9 0.sh 5.sh
[root@lokott hello]# ls
0.sh.gz 5.sh.gz ifcfg-ens33 linux
[root@lokott hello]# gzip -d 0.sh.gz
[root@lokott hello]# gzip -d 5.sh.gz
[root@lokott hello]# ls
0.sh 5.sh ifcfg-ens33 linux
[root@lokott hello]# bzip2 -9 0.sh 5.sh
[root@lokott hello]# bzip2 -d 0.sh.bz2
[root@lokott hello]# bzip2 -d 5.sh.bz2
[root@lokott hello]# ls
0.sh 5.sh ifcfg-ens33 linux
[root@lokott hello]#
tar命令:制作归档文件、释放归档文件
- -c:创建文件包
- -x:解压文件包
- -v:显示详细过程
- -f: 执行
- -p:保留原有权限
- -t:查看压缩包的内容
- -C:解压到某个地方去
- -z:gz格式
- -j:bz2格式
[root@lokott hello]# ls
0.sh 5.sh ifcfg-ens33 linux
[root@lokott hello]# tar czvf if.tar.gz ifcfg-ens33
ifcfg-ens33
[root@lokott hello]# ls
0.sh 5.sh ifcfg-ens33 if.tar.gz linux
[root@lokott hello]# tar xzvf if.tar.gz -C ../
ifcfg-ens33
[root@lokott hello]# cd ..
[root@lokott shell]# ls
0.sh 10.sh 1.sh 2.sh 3.sh 4.sh 5.sh 6.sh 8.sh hello ifcfg-ens33 linux
[root@lokott shell]#
//如果是bz2格式就将文件格式的后缀名更换后用j替换z的命令
四、文本编辑器vi/vim(对vim编辑器的熟练操作可以提高工作效率)
作用
- 创建或修改文本文件
- 维护Linux系统中的各种配置文件
命令模式、输入模式、末行模式(底线命令模式)转换关系和操作
vim编辑器的相关操作命令
行号设置操作
- :set nu
- :set nu!和:set nonu 取消行号 注意!!!记住切换为末行模式(底线命令模式)
定位行(命令模式下)
- gg:定位到开头
- G:定位到结尾
- 3G:3表示行号,定位到第三行
复制粘贴删除
- x:删除光标处的单个字符
- dd :删除当前光标所在行
- dw:删除光标所在位置的一个单词
- #dd :删除从光标所在行开始的#行内容
- ddp:上下行调换位置
- yy:复制改行到剪切板
- nyy:复制n行到剪切板
- p:粘贴
vim编辑器中的其他操作
shift+r 替换 在光标处进行替换
PG UP 向上翻页
PG DN 向下翻页
:e ~/install.log 打开新的文件进行编辑(末行模式下)
:r file——在编辑的数据中,读入另一个档案的数据。亦即将 『filename』 这个档案内容加到游标所在行后面(末行模式下)
:w /opt/test.txt 将该文件写入到opt下并且重新命名为test.txt文件但是不保持与源文件相同权限
:n1,n2s/word1/word2/g 在n1到n2行之间将所有的word1换为word2
:%s/word1/word2/g 将所有的word1换为word2
以上是关于Linux的简单介绍和基础命令(下)的主要内容,如果未能解决你的问题,请参考以下文章