代码改变世界

常用的Shell命令

2021-02-20 16:02  guaguahu  阅读(67)  评论(0编辑  收藏  举报

一、16进制、二进制同十进制之间的转换

     echo $((16#11))    17

     echo$((2#11))   3

 

二、数学运算

     echo $((10/2))     5

     echo $((11%2))     1

 

三、hexdump用法

      hexdump -s 16  -n 32 -C  linux_image

      -s  偏移

      -n  长度

      -C  输出十六进制和对应的字符 

四、ubuntu提供的bc命令可以进行数制的转换

     echo "ibase=16;obase=2;111001" |bc            100010001000000000001

     echo "ibase=16;obase=8;111001ABC" |bc         42100015274

     echo "obase=16;121" |bc    79  // 十进制转十六进制

     echo "obase=8;121" |bc    171  // 十进制转八进制

     echo "obase=2;121" |bc    1111001    //  十进制转二进制

四、Linux CP命令详解

# cp [-adfilprsu] 源文件(source) 目标文件(destination)
# cp [options] source1 source2 source3 …. directory
参数:
-a :相当于 -pdr 的意思;
-d :若来源文件为连结文件的属性(link file),则复制连结文件属性而非档案本身;
-f :为强制 (force) 的意思,若有重复或其它疑问时,不会询问使用者,而强制复制;
-i :若目的檔(destination)已经存在时,在覆盖时会先询问是否真的动作!
-l :进行硬式连结 (hard link) 的连结档建立,而非复制档案本身;
-p :连同档案的属性一起复制过去,而非使用预设属性;
-r :递归持续复制,用于目录的复制行为;
-s :复制成为符号连结文件 (symbolic link),亦即『快捷方式』档案;
-u :若 destination 比 source 旧才更新 destination !
最后需要注意的,如果来源档有两个以上,则最后一个目的文件一定要是『目录』才行!

五、查看网卡信息

  sudo lshw -class network

六、Linux用户相关问题

1, 新建用户

    sudo adduser xxx

    切换到root用户给新加的用户修改密码:

    sudo passwd xxxx

2,不同用户之前的切换

    a) 普通用户之间的切换   sudo su xxxx

    b) root用户切换到普通用户:  su -  xxxx

    c) 普通用户切换到root用户:  sudo su

七,把file1.bin file2.bin u-boot.bin  组成新的文件 ubuntu-u-boot.bin文件

cat  file1.bin  file2.bin u-boot.bin > ubuntu-u-boot.bin