linux常用的基础命令

1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。
cp:复制
-f:强制覆盖
-r, -R:递归复制,复制目录需要这个参数
-a:-dR –preserve=all, archive,不改变文件的属主属组以及时间戳,常用于归档
mv:移动(剪切,重命名)
mv /tmp/123.txt /tmp/456.txt(把123.txt重命名为456.txt)
mv /tmp/a/123.txt /tmp/b/ (把/tmp/a文件夹下的123.txt移动到b文件夹下)
mv /tmp/b/123.txt /tmp/a/456.txt(把/tmp/b文件夹下的123.txt移动到a文件夹下并重命名为456.txt)

rm:删除文件和文件夹
-r:递归删除目录
-f:不确认直接删除
mkdir /tmp/a/b/c/d -p
touch /tmp/a/b/c/d/111.txt
rm -f /tmp/a/b/c/d/111.txt (直接删除,没有rm:是否删除的提示)
rm -r /tmp/a/b/c/d(不加-r不能删除目录)
rm -rf /tmp/a(删除/tmp/a文件夹以及文件里的文件和目录,不需确认)
cat
cat /etc/fstab(查看/etc/fstab的内容)
tac
tac /etc/fstab(查看/etc/fstab的内容,文本的最后一行在第一行显示)

head:显示文件前N行,不加参数默认前10行
head -n 1 /etc/passwd(查看passwd文件的第一行内容,-n 1可以直接写成 -1(head -1 /etc/passwd效果一样))
tail:显示文件后N行,默认后10行
-f 查看文件结束后不退出,文件有新增行的时候直接显示
tail -n 1 /etc/passwd(查看passwd文件的最后一行内容,-n 1可以直接写成 -1(tail -1 /etc/passwd效果一样))

2、bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容及其示例演示。
ls /etc/fatab
echo $?执行成功显示为0,不成功显示1-255
echo {a,b}1:命令行展开用{}相当于echo a1 b1,展开的内容需要用逗号分隔

3、请使用命令行展开功能来完成以下练习:
(1)、创建/tmp目录下的:a_c, a_d, b_c, b_d
mkdir -p /tmp/{a,b}_{c,d}
(2)、创建/tmp/mylinux目录下的:
mylinux/
├── bin
├── boot
│   └── grub
├── dev
├── etc
│   ├── rc.d
│   │   └── init.d
│   └── sysconfig
│   └── network-scripts
├── lib
│   └── modules
├── lib64
├── proc
├── sbin
├── sys
├── tmp
├── usr
│   └── local
│   ├── bin
│   └── sbin
└── var
├── lock
├── log
└── run

mkdir -p /tmp/mylinux/{bin,boot/grub,dev,etc/{rc.d/init.d,sysconfig/network-scripts},lib/modules,lib64,proc,sbin,sys,tmp,usr/local/{bin,sbin},var/{lock,log,run}}

4、文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息。
[root@localhost ~]# stat /etc/init.d/functions
File: ‘/etc/init.d/functions’
Size: 18104 Blocks: 40 IO Block: 4096 regular file
Device: fd00h/64768d Inode: 8876704 Links: 1
Access: (0644/-rw-r–r–) Uid: ( 0/ root) Gid: ( 0/ root)
Context: system_u:object_r:bin_t:s0
Access: 2018-08-05 22:16:23.065035083 -0400
Modify: 2018-01-02 11:29:40.000000000 -0500
Change: 2018-07-31 06:04:53.864992425 -0400
Birth: –

File:文件
Size:大小
Blocks:占用块的数量
IO Block:可以写入磁盘的最小大小
Device
Inode:inode节点号
Links:链接的次数
Access: (0644/-rw-r–r–)权限
Uid: ( 0/ root)属主
Gid: ( 0/ root)属组
Context: system_u:object_r:bin_t:s0
Access: 2018-08-05 22:16:23.065035083 -0400访问时间
Modify: 2018-01-02 11:29:40.000000000 -0500修改时间
Change: 2018-07-31 06:04:53.864992425 -0400改变时间

修改访问时间:
touch -a /etc/init.d/functions
修改修改时间
touch -m /etc/init.d/functions
修改到指定时间
touch -t 201712132352.59 /etc/init.d/functions
touch -t 1712132352.59 /etc/init.d/functions
上述两种,时间是一样的
[ [CC] YY] MMDDhhmm [.SS]
YY为年数的后两位,即某世纪中的年数.可以不给出CC的值
MM为月数,DD为天.MM为月数,DD为天数,hh为小时数(几点),mm为分钟数,SS为秒数
5、如何定义一个命令的别名,如何在命令中引用另一个命令的执行结果?
[root@localhost ~]# alias Networkdir=’cd /etc/sysconfig/network-scripts/’
[root@localhost ~]# Networkdir
[root@localhost network-scripts]# pwd
/etc/sysconfig/network-scripts

[root@localhost network-scripts]# mkdir /tmp/$(date +%F.%H.%M.%S)
[root@localhost network-scripts]# ll /tmp/
drwxr-xr-x. 2 root root 6 Aug 5 23:38 2018-08-05.23.38.04

6、显示/var目录下所有以l开头,以一个小写字母结尾,且中间至少出现一位数字(可以有其它字符)的文件或目录。
ls -d /var/l*[0-9]*[[:lower:]]
7、显示/etc目录下,以任意一个数字开头,且以非数字结尾的文件或目录。
ls -d /etc/[0-9]*[^0-9]
8、显示/etc目录下,以非字母开头,后面跟了一个字母以及其它任意长度任意字符的文件或目录。
ls -d /etc/[^a-z][a-z]*
9、在/tmp目录下创建以tfile开头,后跟当前日期和时间的文件,文件名形如:tfile-2016-05-27-09-32-22。
touch /tmp/tfile-$(date +%Y-%m-%d-%H-%M-%S)
10、复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中。
mkdir -p /tmp/mytest1
cp -r /etc/p*[^0-9] /tmp/mytest1
11、复制/etc目录下所有以.d结尾的文件或目录至/tmp/mytest2目录中。
mkdir -p /tmp/mytest2
cp -r /etc/*.d /tmp/mytest2
12、复制/etc/目录下所有以l或m或n开头,以.conf结尾的文件至/tmp/mytest3目录中。
mkdir /tmp/mytest3
cp -r /etc/[lmn]*.conf /tmp/mytest3

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/112406

发表评论

登录后才能评论

This site uses Akismet to reduce spam. Learn how your comment data is processed.

评论列表(1条)

  • 马哥教育
    马哥教育 2018-09-04 20:37

    建议命令用代码格式处理一下,格式会看上去更清晰

联系我们

400-080-6560

在线咨询

工作时间:周一至周五,9:30-18:30,节假日同时也值班

QR code