Linux 基础命令(一)
来源:互联网 发布:名片设计软件哪个好 编辑:程序博客网 时间:2024/06/13 17:14
Linux 基础命令(一)
Published On July 15, 2017
本系列将学习过程中遇到的命令整理一下,留作备查和复习使用。
bc 支持任意精度数值的交互式执行的计算机语言
bc命令是一种类似于C语言,能够支持任意精度数值计算的计算机语言。可以在命令中指定Standard math lib 。
OPTIONS
-h, --help Print the usage and exit. 打印使用帮助 -i, --interactive Force interactive mode. 强制进入交互模式 -l, --mathlib Define the standard math library. 定义使用标准的数学库 -w, --warn Give warnings for extensions to POSIX bc. 对POSIX bc的扩展给出警告信息 -s, --standard Process exactly the POSIX bc language. 正确的处理POSIX bc 语言 -q, --quiet Do not print the normal GNU bc welcome. 不打印welcome语句 -v, --version Print the version number and copyright and quit. 打印版本号
EXAMPLE
-
执行浮点数运算
echo "1239.22347*232" | bc 287499.84504
-
设定小数精度
echo "scale=2;3/8" | bc 0.37
-
进制转换
//十进制转换二进制 echo "obase=2;1024" | bc 10000000000 //二进制转换成十进制 //obase:out base 转换后的进制数 //ibase:in base 转换前的进制数 echo "obase=10;ibase=2;11111111" | bc 255
-
计算平方和平方根
echo "10^9" | bc echo "sqrt(100)" | bc //开平方并指定精度 echo "scale=5;sqrt(2312)" | bc
cp 文件复制命令
将一个或者多个源文件或者目录复制到指定的文件或目录。
单源复制 cp [OPTION]… [-T] SOURCE DEST
多源复制 cp [OPTION]… SOURCE… DIRECTORY
cp [OPTION]… -t DIRECTORY SOURCE…
单源复制:
如果DEST不存在,则事先创建此文件,并复制源文件的数据流至DEST中。
如果DEST存在:
如果DEST是非目录文件:则覆盖目标文件;
如果DEST是目录文件,则现在DEST目录下创建一个与源文件同名的文件,并复制其数据流至目标文件多源复制:
如果DEST不存在:错误
如果DEST存在:
如果DEST是非目录文件:错误
如果DEST是目录文件,分别复制每个文件至目标目录中,并保持原名OPTIONS
-i:交互式复制,即覆盖之前,提醒用户确认 -f:强制覆盖目标文件 -r,-R:递归复制目录, -d:复制符号链接文件本身,而非其指向的源文件 -a: same as -dR --preserve=all,archive 用于实现归档 --preserve mode:权限 ownership:属主和属组 timestamps:时间戳 context:安全标签 xattr:扩展属性 links:符号链接 all:上述所有属性
EXAMPLE
- 单源复制
cp -r /tmp/mysysroot /home/quliang/temp/mysysroot //展示该目录下的文件树形结构 tree temp/mysysroot temp/mysysroot ├── bin ├── etc │ └── sysconfig │ └── network-scripts ├── sbin ├── usr │ ├── bin │ ├── lib │ ├── lib64 │ ├── local │ │ ├── bin │ │ ├── etc │ │ ├── lib │ │ └── sbin │ └── sbin └── var ├── cache ├── log └── run
- 多源复制
//同样适用bash 路径的扩展性 //如果test 不存在 则出错 //如果test 不是目录文件 则出错 cp -r mysysroot/{bin,sbin,etc} mysysroot2/test2 cp: target `mysysroot2/test2' is not a directory cp -r mysysroot/{bin,sbin,etc} mysysroot2/test //mysysroot2 是将mysysroot 复制了一份 tree mysysroot2 mysysroot2 ├── bin ├── etc │ └── sysconfig │ └── network-scripts ├── sbin ├── test │ ├── bin │ ├── etc │ │ └── sysconfig │ │ └── network-scripts │ └── sbin ├── test2 ├── usr │ ├── bin │ ├── lib │ ├── lib64 │ ├── local │ │ ├── bin │ │ ├── etc │ │ ├── lib │ │ └── sbin │ └── sbin └── var ├── cache ├── log └── run
cat 显示文件内容
链接文件,并打印到标准输出上。 不要查看二进制文件
OPTIONS
-n: 给显示的文本行统一编号 -E:显示行结束符$;
EXAMPLE
先使用nano工具在测试目录下新建两个文本文件,并写入一些内容
cat -nE text1 text2 1 HelloWorld$ 2 $ 3 Hello World !!!!!!!$
dd 复制文件并对文件的内容进行转换
用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换
可以用来做文件数据备份
OPTIONS
if=文件名:输入文件名,缺省为标准输入。即指定源文件。< if=input file > of=文件名:输出文件名,缺省为标准输出。即指定目的文件。< of=output file > ibs=bytes:一次读入bytes个字节,即指定一个块大小为bytes个字节。 obs=bytes:一次输出bytes个字节,即指定一个块大小为bytes个字节。 bs=bytes:同时设置读入/输出的块大小为bytes个字节。 cbs=bytes:一次转换bytes个字节,即指定转换缓冲区大小。 skip=blocks:从输入文件开头跳过blocks个块后再开始复制。 seek=blocks:从输出文件开头跳过blocks个块后再开始复制。 注意:通常只用当输出文件是磁盘或磁带时才有效,即备份到磁盘或磁带时才有效。 count=blocks:仅拷贝blocks个块,块大小等于ibs指定的字节数。 conv=conversion:用指定的参数转换文件。 ascii:转换ebcdic为ascii ebcdic:转换ascii为ebcdic ibm:转换ascii为alternate ebcdic block:把每一行转换为长度为cbs,不足部分用空格填充 unblock:使每一行的长度都为cbs,不足部分用空格填充 lcase:把大写字符转换为小写字符 ucase:把小写字符转换为大写字符 swab:交换输入的每对字节 noerror:出错时不停止 notrunc:不截短输出文件 sync:将每个输入块填充到ibs个字节,不足部分用空(NUL)字符补齐。
EXAMPLE
先使用nano工具在测试目录下新建两个文本文件,并写入一些内容
//将大写字母转换成小写字母 dd if=text1 of=text3 conv=lcase cat text3 //将小写字母转换成大写字母 dd if=text3 of=text4 conv=ucase
getent 从名称lib中获取entries,可理解为键值对
使用方法 getent database [key..]
getent命令是用来展示名称库所支持的database中的entries。 名称库 在/etc/nsswitch.conf中进行配置。如果在命令执行的过程中,提供了一个或者多个key,那么相应database中只有与key相对应的entries会被显示出来。如果不指定,所有的键值对都会被显示出来
OPTIONS
//database中常见的有如下几种. aliases psswd group hosts networks services shadow
EXAMPLE
getent passwd bin ftp bin:x:1:1:bin:/bin:/sbin/nologin ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
hexdump 命令
查看”二进制”文件的十六进制编码,但实际上他能查看任何文件,而不仅仅限于二进制文件
用法 hexdump [选项] [文件]…
OPTIONS
-n length 只格式化输入文件的前length个字节。 -C 输出规范的十六进制和ASCII码。 -b 单字节八进制显示。 -c 单字节字符显示。 -d 双字节十进制显示。 -o 双字节八进制显示。 -x 双字节十六进制显示。 -s 从偏移量开始输出。 -e 指定格式字符串,格式字符串包含在一对单引号中,格式字符串形如:'a/b "format1" "format2"'。
EXAMPLE
//单字节八进制 hexdump -b text2 0000000 110 145 154 154 157 040 127 157 162 154 144 040 041 041 041 041 0000010 041 041 041 012 0000014 //双字节16进制 hexdump -x text2 0000000 6548 6c6c 206f 6f57 6c72 2064 2121 2121 0000010 2121 0a21 0000014
通过对比两个命令的结果就可以发现针对字符的查看,以及进制的转换是一致的.
id 命令
id命令可以显示真实有效的用户ID(UID)和组ID(GID).UID是对一个用户的单一标识.GID是可以对应多个UID
使用方法 id [OPTION]… [USERNAME]
OPTIONS
-g或--group 显示用户所属群组的ID。 -G或--groups 显示用户所属附加群组的ID。 -n或--name 显示用户,所属群组或附加群组的名称。 -r或--real 显示实际ID。 -u或--user 显示用户ID。 -help 显示帮助。 -version 显示版本信息。
EXAMPLE
//默认的 id root uid=0(root) gid=0(root) groups=0(root) id -g root 0
iconv 转换文件编码 convert
用来转换文件的编码方式
使用方法 iconv [options] [-f from-encoding] [-t to-encoding] [inputfile]…
OPTIONS
-f encoding :把字符从encoding编码开始转换。 -t encoding :把字符转换到encoding编码。 -l :列出已知的编码字符集合 -o file :指定输出文件 如果不指定,默认输出到标准输出 -c :忽略输出的非法字符 -s :禁止警告信息,但不是错误信息 --verbose :显示进度信息 -f和-t所能指定的合法字符在-l选项的命令里面都列出来了。
EXAMPLE
//列举出当前支持的字符 iconv -l //将text2的文本以UTF-16的形式输出到标准输出 iconv -t UTF-16 text2
博客转载自曲良同学 http://www.pojun.tech
- linux 基础命令(一)
- Linux命令基础(一)
- linux 命令基础(一)
- Linux命令基础(一)
- Linux基础--->命令(一)
- Linux 基础命令(一)
- linux基础命令和知识(一)
- Linux常见基础命令总结(一)
- Linux sed命令(一)基础
- Linux awk命令(一)基础
- Linux命令基础操作(一)
- Linux基础命令学习笔记(一)
- linux基础总结(一)-------命令
- Linux基础(一):文件处理命令
- linux基础命令(一)常用简单命令及快捷键
- linux 命令【一】基础篇
- Linux基础命令实践一
- linux入门(一) 命令基础
- mysql锁机制
- iovec用法
- [PAT]Table Tennis (30)Java实现
- 应用程序窗体切至前台的方法
- aj增删改查完整版1
- Linux 基础命令(一)
- tf.truncated_normal的用法
- Cocos之 从C++过渡到Lua
- Android Kotlin(二)—— Kotlin与Retrofit进行网络请求RecyclerView展示图片列表
- TextView根据宽度截取字符串
- RabbitMQ(四)消息确认(发送确认,接收确认)
- 经典网络的 TensorFlow 实现资源汇总
- C语言第五章重要知识总结
- 几种委托指向函数的方式