浅谈linux基础知识(二)

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

文件管理工具:cp,mv,rm

	cp命令:copy
源文件,目标文件

单源复制:cp[OPTION]... [-T] SOURCE DEST
多源复制:
cp[OPTION]... SOURCE... DIRECTORY
cp[OPTION]... -t DIRECTORY SOURCE...

单源复制:
如果DEST不存在,则先创建此文件,并复制源文件的数据流至DEST中
如果DEST存在,
是非目录文件,则覆盖目标文件
是目录文件,则先在DEST目录下创建一个与源文件同名的文件,并复制其数据流

多源复制:
如果DEST不存在:提示错误
如果DEST是非目录文件:错误
如果DEST是目录文件:分别复制每个文件至目标目录中,并保持原名

常用选项:
	-i:交互式复制,即覆盖之前提醒用户确认
	-f:强制覆盖目标文件
	-r:递归复制目录:复制目录及目录中的内容至目标目录
	-d:复制符号链接文件本身,而非其指向的源文件
	-a:-dR --preserve=all,archive,用于实现归档
	--preserv=
mode:权限
ownership:属主和属组
timestamps:时间戳
context:安全标签
xattr:扩展属性
links:符号链接
all:上述所有属性

mv命令:
mv [OPTION]... [-T] SOURCE DEST
mv [OPTION]... SOURCE... DIRECTORY
mv [OPTION]... -t DIRECTORY SOURCE...

常用选项:
-i:交互式
-f:force

rm命令:
rm [OPTION]... FILE...

常用选项:
-i:interactive
-f:force
-r:recursive

删除目录:rm -rf /PATH/TO/DIR
危险操作:rm -rf /*
注意:所有不用的文件不要直接删除,而是移动到某个专用的模拟回收站

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

命令状态返回值 #echo $?

0:表示命令执行正确

1-255 表示命令执行错误

3、命令行展开功能之小练习

(1).创建/tmp目录下的:ac,ad,bc,bd

[root@centos-k tmp]# mkdir -v {a,b}_{c,d}
mkdir: 已创建目录 "a_c"
mkdir: 已创建目录 "a_d"
mkdir: 已创建目录 "b_c"
mkdir: 已创建目录 "b_d"

(2).创建/tmp/mylinux目录下的文件

[root@centos-k tmp]# mkdir -pv /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}}
mkdir: 已创建目录 "/tmp/mylinux"
mkdir: 已创建目录 "/tmp/mylinux/bin"
mkdir: 已创建目录 "/tmp/mylinux/boot"
mkdir: 已创建目录 "/tmp/mylinux/boot/grub"
mkdir: 已创建目录 "/tmp/mylinux/dev"
mkdir: 已创建目录 "/tmp/mylinux/etc"
mkdir: 已创建目录 "/tmp/mylinux/etc/rc.d"
mkdir: 已创建目录 "/tmp/mylinux/etc/rc.d/init.d"
mkdir: 已创建目录 "/tmp/mylinux/etc/sysconfig"
mkdir: 已创建目录 "/tmp/mylinux/etc/sysconfig/network-scripts"
mkdir: 已创建目录 "/tmp/mylinux/lib"
mkdir: 已创建目录 "/tmp/mylinux/lib/modules"
mkdir: 已创建目录 "/tmp/mylinux/lib64"
mkdir: 已创建目录 "/tmp/mylinux/proc"
mkdir: 已创建目录 "/tmp/mylinux/sbin"
mkdir: 已创建目录 "/tmp/mylinux/sys"
mkdir: 已创建目录 "/tmp/mylinux/tmp"
mkdir: 已创建目录 "/tmp/mylinux/usr"
mkdir: 已创建目录 "/tmp/mylinux/usr/{local"
mkdir: 已创建目录 "/tmp/mylinux/usr/{local/bin}"
mkdir: 已创建目录 "/tmp/mylinux/usr/{local/sbin}"
mkdir: 已创建目录 "/tmp/mylinux/var"
mkdir: 已创建目录 "/tmp/mylinux/var/lock"
mkdir: 已创建目录 "/tmp/mylinux/var/log"
mkdir: 已创建目录 "/tmp/mylinux/var/run"
[root@centos-k tmp]# tree 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

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

(1)文件的元数据信息,使用stat命令查看,包含信息(如下-2)

(2)如何修改文件的时间戳信息

[root@centos tmp]# touch -t 201610101001 kk.log
[root@centos tmp]# stat kk.log/
  File: `kk.log/'
  Size: 4096      	Blocks: 8          IO Block: 4096   directory
Device: fd00h/64768d	Inode: 915346      Links: 2
Access: (0755/drwxr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2016-10-10 10:01:00.000000000 +0800
Modify: 2016-10-10 10:01:00.000000000 +0800
Change: 2016-10-12 16:14:27.863545460 +0800

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

[root@centos ~]# alias
alias cp='cp -i'
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'

引用命令结果 : command或者$(command)进行引用

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

(0)
KK
上一篇 2016-10-12
下一篇 2016-10-12

相关推荐

  • GNU awk

    GNU awk:      文本处理三剑客:grep,sed,awk            grep,egrep,fgrep:文本过滤工具;pattern     &nb…

    Linux干货 2017-05-22
  • 描述器

    Edit 描述器 |[Descriptors] 描述器的表现 用到3个魔术方法:__get__()、__set__()、__delete__() 方法用法: object.__get__(self,instance,owner) object.__set__(self,instance,value) object.__delete__(self,instan…

    Linux干货 2017-11-29
  • class9 bash编程基础(一)

    一、编程基础 程序:指令+ 数据 程序编程风格: 过程式:以指令为中心,数据服务于指令 对象式:以数据为中心,指令服务于数据 shell 程序:提供了编程能力,解释执行 程序的执行方式 计算机:运行二进制指令; 编程语言: 低级:汇编 高级: 编译:高级语言–> 编译器–> 目标代码   &n…

    Linux干货 2016-08-15
  • 自制简易linux系统

    一、环境准备 1.笔记本电脑 2.vmware12软件 3.CentOS 6虚拟机 4.大于5G空间的物理磁盘分区 二、分区并挂载文件系统 1.添加磁盘 在vmware中选中CentOS 6系统并右击鼠标选择设置,添加–>硬盘–>SCSI(推荐)–>创建新虚拟磁盘–>大小改为5G–>完成 2.分区并…

    Linux干货 2016-09-20
  • Linux系统程序包的管理-Yum及编译安装

          Yum 是通过分析RPM的标头数据后,根据各软件的依赖关系制作出有依赖关系时的的解决方案,然后可以自动处理软件的依赖性问题,以解决软件安装或移除与升级的问题。       由于发行版必须要先释放软件,然后将软件放置于yum服务器上面,以提供用户端用来安装与升…

    2017-05-02
  • 软件包管理工具的使用及yum源仓库的配置

    我们知道CentOS,本质上是RedHat的社区版,其无论是功能还是软件配置上都与RedHat保持一致,因此CentOs系列的软件包管理主要的也是rpm和yum工具。 RPM包管理 rpm包管理工具可以说是历史悠久、名声斐然了。rpm起初是RedHat公司研发的软件包管理工具,即RedHat Package Managemer。但由于其性能突出,在开源界得到…

    Linux干货 2016-11-06

评论列表(1条)

  • 马哥教育
    马哥教育 2016-10-20 19:28

    不错,知识的积累和沉淀做的很好,很细致。