shell使用记录

SHELL 使用记录

-输入参数个数及获取
某shell段程序获取输入参数采用以下的一些参量
$##代表输入参数的个数(不包括本shell文件名)
$1 #第一个参数
$k #第k个参数
例如:
sh example.sh a b c
$# = 3 (a,b,c三个参数)
$1 = a 以此类推


-uname命令
uname 显示当前操作系统的名称
uname -s show name ,显示系统名字(eg.Darwin)
uname -p 显示系统CPU体系结构(eg. i386)
uname -r 发行版本(eg. 14.1.1)
uname -a 显示-m,-n,-r,-s -v的所有信息


  • * Ubuntu 下常用命令*
#查看ubuntu 版本号
cat /etc/issue 
Ubuntu 12.04.4TLS \n \1
  • while 循环
    #while循环
    while [ $a -gt $b ] #空格是必须的 
    do
     xxxx
    done
    # for 循环
    for i in {a b c d e} #for遍历
    do 
    xxxx
    done

  • switch case 语法
    case $a in #case 判断 
    s1) xxxxx #s1表示如果a=s1,也可以是通配符
    s2) xxxxx 

以下转自ubuntu查看文件大小

使用linux命令df 和du,df 但是df只能查看一级文件夹大小、使用比例、档案系统及其挂入点,但对文件却无能为力。du可以查看文件及文件夹的大小。所以基本上是两者配合使用。

  • df
    h参数, 表示使用「Human-readable」的输出,即是输出GB、MB方式
[root@localhost /]# df -h   
Filesystem            Size  Used Avail Use% Mounted on   
/dev/sda3             262G  224G   25G  91% /   
/dev/sda1             190M   12M  169M   7% /boot   
tmpfs                 3.9G     0  3.9G   0% /dev/shm  
[root@localhost /]# df -h  
Filesystem            Size  Used Avail Use% Mounted on  
/dev/sda3             262G  224G   25G  91% /  
/dev/sda1             190M   12M  169M   7% /boot  
tmpfs                 3.9G     0  3.9G   0% /dev/shm  
  • du

    max-depth参数表示指定深入目录的层数,很重要,不指定的话,会显示所有层次目录

[root@localhost /]# du -h --max-depth=1 /usr   
1.8G    /usr/share   
614M    /usr/lib   
8.0K    /usr/etc   
2.1M    /usr/kerberos   
24K     /usr/X11R6   
14G     /usr/local   
37M     /usr/libexec   
35M     /usr/sbin   
224M    /usr/include   
199M    /usr/bin   
62M     /usr/src   
8.0K    /usr/games   
727M    /usr/lib64   
17G     /usr  
[root@localhost /]# du -h --max-depth=1 /usr  
1.8G    /usr/share  
614M    /usr/lib  
8.0K    /usr/etc  
2.1M    /usr/kerberos  
24K     /usr/X11R6  
14G     /usr/local  
37M     /usr/libexec  
35M     /usr/sbin  
224M    /usr/include  
199M    /usr/bin  
62M     /usr/src  
8.0K    /usr/games  
727M    /usr/lib64  
17G     /usr  
  • mount 挂载 mount命令(用来挂载硬盘或镜像等)转载于ubuntu 挂载
    用法:mount [-t vfstype] [-o options] device dir

1.-t vfstype指定文件系统的类型,通常不必指定。mount 会自动选择正确的类型。常用类型有:
DOS fat16文件系统:msdos
Windows 9x fat32文件系统:vfat
Windows NT ntfs文件系统:ntfs
Windows网络文件共享:smbfs (默认的windows系统都支持的)
windows网络共享文件:cifs (cifs是smbfs的升级版,默认的windows系统都支持的,首先推荐)
光盘或光盘镜像:iso9660
UNIX(LINUX) 文件网络共享:nfs

2.-o options主要用来描述设备或档案的挂接方式。常用的参数有
loop:用来把一个文件当成硬盘分区挂接上系统
ro:采用只读方式挂接设备
rw:采用读写方式挂接设备
iocharset:指定访问文件系统所用字符集
3.device 要挂接(mount)的设备。
4.dir设备在系统上的挂接点(mount point)。

  1. monut 远程或本机的windows分区之NTFS格式支持

    根据内核安装ntfs支持模块http://sourceforge.net/projects/linux-ntfs/files/
    具体的过程帮助:http://gerardmcgarry.com/blog/hacking-centos-ntfs-support
    实例:sudo mount -t cifs //remotehostname/shared /mnt/myshared -o username=XXX,password=XXX
    安装ntfs-3g—– yum install ntfs-3g(fuse-ntfs-3g)
    参考:http://www.zzdushi.com/?p=30
    参考:http://ntfs-3g.org/
    具体过程帮助:http://wiki.centos.org/TipsAndTricks/NTFS
    实例:mount -t ntfs-3g /dev/sda1 /mnt/windows(umount /mnt/windows)

  2. * 实例*

    • 挂载本机的iso:mount -o loop -t iso9660 /home/sunky/mydisk.iso /mnt/vcdrom
    • 挂载远程的fat32的共享目录:mount //10.167.20.20/shared /mnt/mywinshare
      Windows 的C分区挂到Liunx的/mnt/winc目录下: mount -t vfat /dev/hda1 /mnt/winc ,如果中文显示有问题:#mount -t vfat -o iocharset=cp936 /dev/hda1 /mnt/winc。(要挂载本地的windows分区,在ubuntu下使用命令sudo fdisk -l 来查看磁盘分区情况。)
      当插入闪盘后,闪盘被识别为一个SCSI盘,通常输入以下命令:mount /dev/sda1 /usb

mount 后面什么都不接时,会列举出当前所有挂载信息

  1. fdisk -l 列举当前所有分区信息和物理分区信息;
    linux中df命令参数功能:检查文件系统的磁盘空间占用情况。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。from http://www.poluoluo.com/server/201011/98357.html
  语法:df [选项]
  说明:linux中df命令可显示所有文件系统对i节点和磁盘块的使用情况。
  该命令各个选项的含义如下:
  -a 显示所有文件系统的磁盘使用情况,包括0块(block)的文件系统,如/proc文件系统。
  -k 以k字节为单位显示。
  -i 显示i节点信息,而不是磁盘块。
  -t 显示各指定类型的文件系统的磁盘空间使用情况。
  -x 列出不是某一指定类型文件系统的磁盘空间使用情况(与t选项相反)。
  -T 显示文件系统类型。
  功能:检查文件系统的磁盘空间占用情况。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。
  例1:列出各文件系统的磁盘空间使用情况。
  $ df
  Filesystem 1 K-blocks Used Available Use% Mounted on
  /dev/hda2 1361587 1246406 44823 97% /
  linux中df命令的输出清单的第1列是代表文件系统对应的设备文件的路径名(一般是硬盘上的分区);第2列给出分区包含的数据块(1024字节)的数目;第34列分别表示已用的和可用的数据块数目。用户也许会感到奇怪的是,第34列块数之和不等于第2列中的块数。这是因为缺省的每个分区都留了少量空间供系统管理员使用。即使遇到普通用户空间已满的情况,管理员仍能登录和留有解决问题所需的工作空间。清单中Use% 列表示普通用户空间使用的百分比,即使这一数字达到100%,分区仍然留有系统管理员使用的空间。最后,Mounted on列表示文件系统的安装点。
  例2:列出各文件系统的i节点使用情况。
  $ df -ia
  Filesystem Inodes IUsed IFree Iused% Mounted on
  /dev/ hda2 352256 75043 277213 21% /
  none 0 0 0 0% /proc
  localhost:(pid221) 0 0 0 0% /net
  例3:列出文件系统的类型。
  $ df -T
  Filesystem Type 1K-blocks Used Available use% Mounted on
  /dev/hda2 ext2 1361587 1246405 44824 97% /
  本例中的文件系统是ext2类型的
  [root@rac1 ~]# df
  Filesystem 1K-blocks Used Available Use% Mounted on
  /dev/sda1 3020140 2333952 532772 82% /
  none 213320 0 213320 0% /dev/shm
  /dev/sda2 4633108 1818088 2579668 42% /u01
  /dev/sde1 524272 81104 443168 16% /ocfs
  该条命令显示了服务器上所有分区的使用情况。它还包括了几个有用的参数来帮助格式化输出:
  -a显示系统所有的分区,在平常默认情况下 不显示0块的分区
  [root@rac1 ~]# df -a
  Filesystem 1K-blocks Used Available Use% Mounted on
  /dev/sda1 3020140 2333952 532772 82% /
  none 0 0 0 - /proc
  none 0 0 0 - /sys
  none 0 0 0 - /dev/pts
  none 213320 0 213320 0% /dev/shm
  /dev/sda2 4633108 1818096 2579660 42% /u01
  none 0 0 0 - /proc/sys/fs/binfmt_misc
  sunrpc 0 0 0 - /var/lib/nfs/rpc_pipefs
  configfs 0 0 0 - /config
  ocfs2_dlmfs 0 0 0 - /dlm
  /dev/sde1 524272 81104 443168 16% /ocfs
  oracleasmfs 0 0 0 - /dev/oracleasm
  -h更具目前磁盘空间和使用情况 以更易读的方式显示
  [root@rac1 ~]# df -h
  Filesystem Size Used Avail Use% Mounted on
  /dev/sda1 2.9G 2.3G 521M 82% /
  none 209M 0 209M 0% /dev/shm
  /dev/sda2 4.5G 1.8G 2.5G 42% /u01
  /dev/sde1 512M 80M 433M 16% /ocfs
  -H根上面的-h参数相同,不过在根式化的时候,采用1000而不是1024进行容量转换
  [root@rac1 ~]# df -H
  Filesystem Size Used Avail Use% Mounted on
  /dev/sda1 3.1G 2.4G 546M 82% /
  none 219M 0 219M 0% /dev/shm
  /dev/sda2 4.8G 1.9G 2.7G 42% /u01
  /dev/sde1 537M 84M 454M 16% /ocfs
  -k以单位显示磁盘的使用情况
  [root@rac1 ~]# df -k
  Filesystem 1K-blocks Used Available Use% Mounted on
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值