bash命令/文件管理-bash命令

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了bash命令/文件管理-bash命令相关的知识,希望对你有一定的参考价值。

命令解释器,我们可以SHELL实现对Linux系统的管理例如:

1. 文件管理

2. 用户管理

3. 权限管理

4. 磁盘管理

5. 软件管理

6. 网络管理

......


内容提要:

bash shell提示符

shell 语法

bash 特性

Linux获得帮助



一、bash shell提示符:

===================

[[email protected] ~]# date

2012年 10月 24日 星期三 09:38:54 CST


[[email protected] ~]# whoami 

root

[[email protected] ~]# useradd jack

[[email protected] ~]# passwd jack

Changing password for user jack.

New UNIX password: 

BAD PASSWORD: it is WAY too short

Retype new UNIX password: 

passwd: all authentication tokens updated successfully.



二、shell 语法

=====================

命令    选项   参数

[[email protected] ~]# date

[[email protected] ~]# date +%F

[[email protected] ~]# date -s 12:30


命令:整条shell命令的主体

选项:会影响会微调命令的行为 //通常以 -, --, +

参数:命令作用的对象 


[[email protected] Desktop]# ls

1.png    tianyun_ULA03.ctb~       tigervnc-1.1.0-5.el6.x86_64.rpm

2.png    tianyun_ULA04.ctb        ULE初始化.ctb

3.png    tianyun_ULA04.ctb~       video_install.sh

ftp      tianyun_ULE_2013_12.ctb

ftp.png  tianyun_ULE.ncd


[[email protected] Desktop]# ls /home/

alice  guests  instructor  lost+found  student


[[email protected] Desktop]# ls -a /home/

.  ..  alice  guests  instructor  lost+found  student

==================================================================

小知识:

*******文件时间*******

ls -l 文件名 仅看的是文件的修改时间

Linux文件有三种时间:

# stat anaconda-ks.cfg

访问时间:atime,查看 内容

修改时间:mtime,修改 内容

改变时间:ctime,文件 属性,比如权限


[[email protected] ~]# ls -l install.log

-rw-r--r-- 1 root root 34793 10-23 13:49 install.log

[[email protected] ~]# 

[[email protected] ~]# stat install.log

  File: “install.log”

  Size: 34793           Blocks: 80         IO Block: 4096   一般文件

Device: 802h/2050d      Inode: 65282       Links: 1

Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)

Access: 2012-10-23 16:53:20.000000000 +0800

Modify: 2012-10-23 13:49:46.000000000 +0800

Change: 2012-10-23 13:49:52.000000000 +0800


***文件类型:

通过颜色判断文件的类型是错误的!!!

Linux文件是没有扩展名!!!

方法一:

ls -l 文件名    //看第一个字符

- 普通文件(文本文件,二进制文件,压缩文件,电影,图片。。。)

d 目录文件(蓝色)

b 设备文件(块设备)存储设备硬盘,U盘

c 设备文件(字符设备)打印机,终端/dev/tty1

s 套接字文件

p 管道文件

l 链接文件(淡蓝色)


方法二:file

[[email protected] ~]# file anaconda-ks.cfg 

anaconda-ks.cfg: ASCII English text


[[email protected] ~]# file /bin/ls

[[email protected] ~]# file /home

[[email protected] ~]# file /dev/sda

/dev/sda: block special                                                              块设备

[[email protected] ~]# file /etc/grub.conf

/etc/grub.conf: symbolic link to `../boot/grub/grub.conf‘               符号连接

[[email protected] ~]# file /dev/tty1

/dev/tty1: character special (4/1)                                               字符设备

[[email protected] ~]# file /dev/initctl

/dev/initctl: fifo (named pipe)                                                     管道

[[email protected] ~]# file /dev/log 

/dev/log: socket                                                                         套接字


[[email protected] ~]# ll anaconda-ks.cfg /dev/tty1 /dev/sda1

=================================================================


三、bash特性

1. 命令和文件(参数)自动补全<tab>  注意:Tab只能补全命令和文件  RHEL6

# ls /etc/sysconfig/network-scripts/

# ls /etc/sysconfig/network-scripts/ifcfg-eth0

# cat /etc/sysconfig/network-scripts/ifcfg-eth0

# service network restart 

# service sshd restart 

# date -s 12:30


2. 快捷键

^c   终止前台运行的程序

^d   退出 等价exit

^l    清屏 

^a   光标移到命令行的最前端

^e   光标移到命令行的后端

^u   删除光标前所有字符

^k   删除光标后所有字符

^r   搜索历史命令,利用关键词

Alt+. 引用上一个命令的最后一个参数,等价于!$

ESC . 引用上一个命令的最后一个参数,等价于!$

# ls /etc/sysconfig/network-scripts/ifcfg-eth0

# cat ESC .


3. 历史命令

# history

a. 光标上下键

b. ^r //搜索历史命令(输入一段某条命令的关键字:必须是连续的)

c. !220 //执行历史命令中第220条命令

d. !字符串 //搜索历史命令中最近一个以xxxx字符开头的命令,例如!ser

e. !$    //引用上一个命令的最后一个参数

   [[email protected] ~]# ls   /root   /home

   [[email protected] ~]# cd !$

   cd /home

   

   [[email protected] ~]# ls   /root   /home

   [[email protected] ~]# touch !$/file1

   touch /home/file1


4. 别名

# alias //查看系统当前的别名

  ll=‘ls -l --color=tty‘

# alias tianyun=‘ls /etc/sysconfig/network-scripts/‘    //建立别名

# unalias  tianyun  

                               //取消tianyun这个别名

[[email protected] ~]# type -a ls

ls is aliased to `ls --color=auto‘

ls is /bin/ls

[[email protected] ~]# ls                                                    //别名优先

[[email protected] ~]# \ls                                                   //跳过别名



四、Linux获得帮助

1. 命令  --help

# ls --help

用法:ls [选项]... [文件]...


ls 常见选项

-a    all,查看目录下的所有文件,包括隐藏文件

-l     长列表显示

-h    human 以人性化方式显示出来   

-d    只列出目录名,不列出其他内容

-t     按修改时间排序

-S    按文件的Size排序

-r     逆序排列

-i      显示文件的inode号(索引号)


# date --help

Usage: date [OPTION]... [+FORMAT]

or:  date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]

# date 0214080014

# date 0214080014.00


2. man 手册名,例如man ls

搜索:/-h  n N



技巧一:按章节来查找,常用的是1(命令用法),5(文本规范),8(系统管理命令)

/usr/bin/passwd 命令,修改用户密码   man 1 passwd 

/etc/passwd 保存用户信息的文件   man 5 passwd

/etc/exports 之后将讲到nfs服务的配置文件 man exports    man 5 exports


技巧二:按关键字检索(适合记不住手册的全名时使用)

man ftpd_selinux

man -k "_selinux"       //手册名或手册描述中包含关键字_selinux

注:从whatis数据库里找(# makewhatis)


技巧三:在所有章节中查询

# man -a passwd

# man -f passwd


示例:

# man genisoimage

/EXAMPLES

To create a vanilla ISO9660 filesystem image in the file

       cd.iso,  where the directory cd_dir will become the root

       directory if the CD, call:

          % genisoimage -o cd.iso cd_dir

[[email protected] ~]# genisoimage -o home.iso /home/

[[email protected] ~]# file home.iso 

home.iso: ISO 9660 CD-ROM filesystem data ‘CDROM


3. /usr/share/doc

参考文档、配置模板文件

例如:PAM

# firefox /usr/share/doc/pam-1.1.1/html/Linux-PAM_SAG.html


4. 官方手册

例如:RedHat官方手册  http://docs.redhat.com

例如:Apache官方手册  


5. baidu, google







本文出自 “绿色森林” 博客,谢绝转载!

以上是关于bash命令/文件管理-bash命令的主要内容,如果未能解决你的问题,请参考以下文章

bash命令/文件管理-基本命令

bash命令/文件管理-vim操作

Linux的文件系统系统管理类命令bash基础特性

linux下部分文件管理类基本命令汇总以及bash展开特性介绍

004-用户组权限管理命令及bash配置文件管道重定向grep

[Linux Shell学习系列三]常用Shell(Bash)命令-管理文件或目录权限