Linux基础学习总结(二)

一、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。

常用基础命令:cd、pwd、mkdir、touch

查看:cat,more,less,tail,head,tac

复制:cp

移动:mv

删除:rm

创建:touch

元数据属性:stat

查看内容类型:file

二、bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容及其示例演示。

bash使用特殊变量$?保存最近一条命令的执行状态结果:

0:成功

1-255:失败

[root@leeblog tmp]# pwd
/tmp
[root@leeblog tmp]# echo $?
0
[root@leeblog tmp]# codm
-bash: codm: command not found
[root@leeblog tmp]# echo $?
127

三、请使用命令行展开功能来完成以下练习:

1、创建/tmp目录下的:a_c, a_d, b_c, b_d

[root@leeblog tmp]# mkdir -p {a,b}_{c,d}
[root@leeblog tmp]# ls -lrt
total 16
drwxr-xr-x 2 root root 4096 Sep 24 20:23 b_d
drwxr-xr-x 2 root root 4096 Sep 24 20:23 b_c
drwxr-xr-x 2 root root 4096 Sep 24 20:23 a_d
drwxr-xr-x 2 root root 4096 Sep 24 20:23 a_c

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

[root@leeblog tmp]# mkdir -p /tmp/mylinux/{bin,dev,lib64,proc,sbin,sys,tem,boot/grub,etc/{rc.d/init.d,sysconfig/network-scripts},lib/modules,usr/local/{bin,sbin},/var{lock,log,run}}
[root@leeblog tmp]# yum install tree -y
[root@leeblog tmp]# tree mylinux/
mylinux/
├── bin
├── boot
│?? └── grub
├── dev
├── etc
│?? ├── rc.d
│?? │?? └── init.d
│?? └── sysconfig
│??     └── network-scripts
├── lib
│?? └── modules
├── lib64
├── proc
├── sbin
├── sys
├── tem
├── usr
│?? └── local
│??     ├── bin
│??     └── sbin
├── varlock
├── varlog
└── varrun

四、文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息。

1、查看:

[root@leeblog app]# stat redis-3.0.3.tar.gz 
  File: `redis-3.0.3.tar.gz'
  Size: 1360959   Blocks: 2664       IO Block: 4096   regular file
Device: ca01h/51713dInode: 918569      Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2015-09-04 09:37:15.448749167 +0800
Modify: 2015-09-01 20:35:33.000000000 +0800
Change: 2015-09-04 09:36:56.955664375 +0800

 2、修改:touch命令

touch - change file timestamps

touch [OPTION]… FILE…

-c: 指定的文件路径不存在时不予创建;

-a: 仅修改access time;

-m:仅修改modify time;

-t STAMP

[[CC]YY]MMDDhhmm[.ss]

五、如何定义一个命令的别名,如何在命令中引用另一个命令的执行结果?

#创建别名,也可以把命令写入环境变量中

[root@leeblog app]# alias grep='grep --auto'

#查看当前shell下的别名

[root@leeblog app]# alias
alias cp='cp -i'
alias l='ls -lrt'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'

#在命令中引用另一个命令的执行结果

com=`COMMAND`

com=$(COMMAND)

六、显示/var目录下所有以l开头,以一个小写字母结尾,且中间至少出现一位数字(可以有其它字符)的文件或目录。

ls  -d /var/1*[0-9]*[[:lower:]]

七、显示/etc目录下,以任意一个数字开头,且以非数字结尾的文件或目录。

ls /etc/[0-9]*[^0-9]

八、显示/etc目录下,以非字母开头,后面跟了一个字母以及其它任意长度任意字符的文件或目录。

ls -d /etc/[^a-z][a-z]*

九、在/tmp目录下创建以tfile开头,后跟当前日期和时间的文件,文件名形如:tfile-2016-05-27-09-32-22。

touch tfile-`date +"%Y-%m-%d-%H-%M-%S"`

十、复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中。

mkdir /tmp/mytest1 | cp -r /etc/p*[^0-9] /tmp/mytest1

十一、复制/etc目录下所有以.d结尾的文件或目录至/tmp/mytest2目录中。

 mkdir /tmp/mytest2 | cp -r /etc/*.d  /tmp/mytest2

十二、复制/etc/目录下所有以l或m或n开头,以.conf结尾的文件至/tmp/mytest3目录中。

mkdir /tmp/mytest3 |cp /etc/{1,m,n}*.conf /tmp/mytest3

原创文章,作者:Leexide,如若转载,请注明出处:http://www.178linux.com/48967