美文网首页
Linux 命令2

Linux 命令2

作者: 歌哥居士 | 来源:发表于2019-03-27 07:13 被阅读0次

echo

换行需要加-e参数

$ echo -e "hello\nbaozi"hellobaozi

set

查看变量
-u 严格模式

$ echo $x

$ set -u
$ echo $x
-bash: x: unbound variable

unset

$ x=5
$ unset x

read

-p 提示输入

$ read -p "please enter your name:" name
please enter your name:baozi
$ echo $name
baozi

-t 设置等待输入时长

$ read -p "请在2秒内输入姓名:" -t 2 name
请在2秒内输入姓名:baozi
$ echo $name
baozi

-s 不显示输入的内容

$ read -p "请输入你的密码:" -s pwd
请输入你的密码:
$ echo $pwd
123

-n 指定字符数

$ read -p "输入5个字符:" -n 5 chars
输入5个字符:12345
$ echo $chars
12345

declare

-设定选项
+取消选项
a 数组型
i 整数型
x 环境变量:export
r 只读变量
p 显示类型

示例

$ aa=11
$ bb=22
$ declare -i cc=$aa+$bb
$ echo $cc
33
$ declare -p cc
declare -i cc="33"

定义数组

$ movie[0]=aa
$ movie[1]=bb
$ declare -a movie[2]=cc
$ echo ${movie[1]}
bb
$ echo ${movie[*]}
aa bb cc
$ declare -p movie
declare -a movie='([0]="aa" [1]="bb" [2]="cc")'

cut

-f 指定取第几列,多列使用逗号分隔。
-d 指定分隔符(默认制表符)。

$ cat stu.txt
1   20  qiu
2   43  liu
3   23  zheng
4   32  yang
5   24  qian
$ cat stu1.txt
1 20 qiu
2 43 liu
3 23 zheng
4 32 yang
5 24 qian

$ cut -f 2 stu.txt
20
43
23
32
24
$ cut -f 2,3 stu.txt
20  qiu
43  liu
23  zheng
32  yang
24  qian

$ cut -f 2 -d " "  stu1.txt
20
43
23
32
24
$ cut -f 2,3 -d " " stu1.txt
20 qiu
43 liu
23 zheng
32 yang
24 qian

printf

%s:输出字符串
%i:输出整数
%f:输出浮点数
%m.nf :m表示整数位长度,n表示小数位长度

$ printf '%s' 1 2 3 4 5 6
123456

$ printf '%s\n' 1 2 3 4 5 6
1
2
3
4
5
6

$ printf '%s %s %s\n' 1 2 3 4 5 6
1 2 3
4 5 6

$ printf '%s %s %s %s %s %s\n' 1 2 3 4 5 6
1 2 3 4 5 6

$ printf '%s%s%s\n' 1 2 3 4 5 6
123
456

$ printf '%s%s%s%s%s%s\n' 1 2 3 4 5 6
123456

读取文件内容

$ printf '%s\t%s\t%s\n' $(cat stu.txt)
1   20  qiu
2   43  liu
3   23  zheng
4   32  yang
5   24  qian

sort

-r 降序,默认升序

$ head -n 20 /etc/passwd | grep -v "#" |cut -f 1,2,3 -d ":" > some_passwd
$ cat some_passwd
nobody:*:-2
root:*:0
daemon:*:1
_uucp:*:4
_taskgated:*:13
_networkd:*:24
_installassistant:*:25
_lp:*:26
_postfix:*:27
_scsd:*:31

$ sort some_passwd
_installassistant:*:25
_lp:*:26
_networkd:*:24
_postfix:*:27
_scsd:*:31
_taskgated:*:13
_uucp:*:4
daemon:*:1
nobody:*:-2
root:*:0

$ sort -r some_passwd
root:*:0
nobody:*:-2
daemon:*:1
_uucp:*:4
_taskgated:*:13
_scsd:*:31
_postfix:*:27
_networkd:*:24
_lp:*:26
_installassistant:*:25

-t 指定分隔符,默认制表符
-k n[,m] 按照指定的字段范围排序,默认到末尾。

$ sort -t ":" -k "3,3" some_passwd
nobody:*:-2
root:*:0
daemon:*:1
_taskgated:*:13
_networkd:*:24
_installassistant:*:25
_lp:*:26
_postfix:*:27
_scsd:*:31
_uucp:*:4

$ sort -t ":" -k "3,3" -r some_passwd
_uucp:*:4
_scsd:*:31
_postfix:*:27
_lp:*:26
_installassistant:*:25
_networkd:*:24
_taskgated:*:13
daemon:*:1
root:*:0
nobody:*:-2

-n 以数值方式排序,数字默认是以字符串形式排序的。

$ sort -t ":" -k "3,3" -r -n some_passwd
_scsd:*:31
_postfix:*:27
_lp:*:26
_installassistant:*:25
_networkd:*:24
_taskgated:*:13
_uucp:*:4
daemon:*:1
root:*:0
nobody:*:-2

$ sort -t ":" -k "3,3" -n some_passwd
nobody:*:-2
root:*:0
daemon:*:1
_uucp:*:4
_taskgated:*:13
_networkd:*:24
_installassistant:*:25
_lp:*:26
_postfix:*:27
_scsd:*:31

wc

-l 只统计行数
-w 只统计单词数
-m 只统计字符数

$ wc /etc/passwd
     108     294    6774 /etc/passwd
$ wc -l -w -m /etc/passwd
     108     294    6774 /etc/passwd

相关文章

  • 基础篇

    Linux学习 一、单用户模式 1、重启Linux命令 2、Linux关机命令 区别:shutdown命令,可以安...

  • Linux——Day3高级指令

    Linux命令大全(手册)_Linux常用命令行实例详解_Linux命令学习手册 1、hostname指令 2、i...

  • Linux常用命令

    Linux常用命令 一、常用命令 1.注销、关机、重启 2.linux基本命令 :文件操作命令 3.linux 系...

  • 【目录】Linux命令集合

    1、Linux常用20个命令(for me)2、Linux 文件权限含义解析3、Linux 文件/目录权限命令:c...

  • day10学习回顾(linux基础)

    1.查看命令位置:which Which命令 2.Linux命令-用户、权限管理 用户是Unix/Linux系统工...

  • day 6 Linux命令行帮助及基础命令讲解

    1. Linux命令行提示符介绍 2. 命令提示符拆解介绍 3. Linux命令提示符相关变量 Linux命令提示...

  • Linux命令学习

    1、Linux查看日志命令 2、Linux系统清除缓存命令 3、securityCRT For Mac破解版下载 ...

  • php的学习路程

    一.Linux方面 Linux常用命令 1. 文件处理命令 2. 权限管理命令 3. 帮助命令 4. 文件搜索命令...

  • Linux学习总结

    Linux学习总结 一、Linux常用命令 1.1 命令格式 命令名 [选项] [参数1] [参数2] 使用bas...

  • Linux 重启 PHP-FPM 命令 --- 2019-12-

    Linux 重启 PHP-FPM 命令 停止命令 2.重启或启动命令

网友评论

      本文标题:Linux 命令2

      本文链接:https://www.haomeiwen.com/subject/cizxvqtx.html