linux运算指数命令,linux算术运算符

linux常用命令

linux常用命令如下:

公司主营业务:成都做网站、网站制作、成都外贸网站建设、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。成都创新互联是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。成都创新互联推出郴州免费做网站回馈大家。

1、查看内核版本:uname -a。

2、控制台-》图形界面:init 5或者startx。

3、图形界面-》控制台: init3或者直接注销。

4、如何查看ip地址:ifconfig。

5、配置ip:ifconfig eth0 ip地址。

6、重启:reboot 或者 shutdown -r now。

7、普通用户切换到系统用户:su。

8、注销用户指令:logout。

9、从子机退出:ctrl+alt。

10、全屏:ctrl+alt+enter 。

基本思想:

Linux的基本思想有两点:第一,一切都是文件;第二,每个文件都有确定的用途。其中第一条详细来讲就是系统中的所有都归结为一个文件,包括命令、硬件和软件设备、操作系统、进程等等对于操作系统内核而言,都被视为拥有各自特性或类型的文件。

完全免费:

Linux是一款免费的操作系统,用户可以通过网络或其他途径免费获得,并可以任意修改其源代码。这是其他的操作系统所做不到的。正是由于这一点,来自全世界的无数程序员参与了Linux的修改、编写工作,程序员可以根据自己的兴趣和灵感对其进行改变,吸收了无数程序员的精华。

以上内容参考:百度百科--Linux

linux的shell进行幂指数计算时,底数和指数均为浮点数,该如何写命令?

shell不支持幂运算 不过你可以用awk来做 可以写 awk "{ printf 1.1^2.2}" 这个命令会输出1.1的2.2次方,如果需要用变量的话 就是 awk "{ printf $a^$b}" 希望能帮上你

30个必知的Linux命令技巧,你都掌握了吗

在Unix/Linux下,高效工作方式不是操作图形页面,而是命令行操作,命令行意味着更容易自动化。使用过Linux系统的朋友应该都知道它的命令行强大之处。话说回来了,以下这些命令使用技巧你又知道多少呢?

1、Vim自动添加注释及智能换行

# vi ~/.vimrc set autoindentset tabstop=4set shiftwidth=4function AddTitle()call setline(1,"#!/bin/bash")call append(1,"#====================================================")call append(2,"# Author: lizhenliang")call append(3,"# Create Date: " . strftime("%Y-%m-%d"))call append(4,"# Description: ")call append(5,"#====================================================")endfmap F4 :call AddTitle()cr

打开文件后,按F4就会自动添加注释,省了不少时间:

2、查找并删除/data这个目录7天前创建的文件

# find /data -ctime +7 -exec rm -rf {} \;# find /data -ctime +7 | xargs rm -rf

3、tar命令压缩排除某个目录

# tar zcvf data.tar.gz /data --exclude=tmp #--exclude参数为不包含某个目录或文件,后面也可以跟多个

4、查看tar包存档文件,不解压

# tar tf data.tar.gz #t是列出存档文件目录,f是指定存档文件

5、使用stat命令查看一个文件的属性

访问时间(Access)、修改时间(modify)、状态改变时间(Change)stat index.phpAccess: 2018-05-10 02:37:44.169014602 -0500Modify: 2018-05-09 10:53:14.395999032 -0400Change: 2018-05-09 10:53:38.855999002 -0400

6、批量解压tar.gz

方法1:# find . -name "*.tar.gz" -exec tar zxf {} \;方法2:# for tar in *.tar.gz; do tar zxvf $tar; done方法3:# ls *.tar.gz | xargs -i tar zxvf {}

7、筛除出文件中的注释和空格

方法1:# grep -v "^#" httpd.conf |grep -v "^$"方法2:# sed -e ‘/^$/d’ -e ‘/^#/d’ httpd.conf http.conf或者# sed -e '/^#/d;/^$/d' #-e 执行多条sed命令方法3:# awk '/^[^#]/|/"^$"' httpd.conf 或者# awk '!/^#|^$/' httpd.conf

8、筛选/etc/passwd文件中所有的用户

方法1:# cat /etc/passwd |cut -d: -f1方法2:# awk -F ":" '{print $1}' /etc/passwd

9、iptables网站跳转

先开启路由转发:echo "1" /proc/sys/net/ipv4/ip_forward #临时生效内网访问外网(SNAT):iptables –t nat -A POSTROUTING -s [内网IP或网段] -j SNAT --to [公网IP]#内网服务器要指向防火墙内网IP为网关公网访问内网(DNAT)(公网端口映射内网端口):iptables –t nat -A PREROUTING -d [对外IP] -p tcp --dport [对外端口] -j DNAT --to [内网IP:内网端口]#内网服务器要配置防火墙内网IP为网关,否则数据包回不来。另外,这里不用配置SNAT,因为系统服务会根据数据包来源再返回去。

10、iptables将本机80端口转发到本地8080端口

# iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8080

11、find命令查找文件并复制到/opt目录

方法1:# find /etc -name httpd.conf -exec cp -rf {} /opt/ \;: #-exec执行后面命令,{}代表前面输出的结果,\;结束命令方法2:# find /etc -name httpd.conf |xargs -i cp {} /opt #-i表示输出的结果由{}代替

12、查看根目录下大于1G的文件

# find / -size +1024M 默认单位是b,可以使用其他单位如,C、K、M

13、查看服务器IP连接数

# netstat -tun | awk '{print $5}' | cut -d: -f1 |sort | uniq -c | sort -n -tun:-tu是显示tcp和udp连接,n是以IP地址显示cut -d:-f1:cut是一个选择性显示一行的内容命令,-d指定:为分隔符,-f1显示分隔符后的第一个字段。uniq -c:报告或删除文中的重复行,-c在输出行前面加上出现的次数sort -n:根据不同类型进行排序,默认排序是升序,-r参数改为降序,-n是根据数值的大小进行排序

14、插入一行到391行,包括特殊符号"/"

# sed -i "391 s/^/AddType application\/x-httpd-php .php .html/" httpd.conf

15、列出nginx日志访问最多的10个IP

方法1:# awk '{print $1}' access.log |sort |uniq -c|sort -nr |head -n 10sort :排序uniq -c:合并重复行,并记录重复次数sort -nr :按照数字进行降序排序方法2:# awk '{a[$1]++}END{for(v in a)print v,a[v] |"sort -k2 -nr |head -10"}' access.log

16、显示nginx日志一天访问量最多的前10位IP

# awk '$4="[16/May/2017:00:00:01" $4="[16/May/2017:23:59:59"' access_test.log |sort |uniq -c |sort-nr |head -n 10# awk '$4="[16/Oct/2017:00:00:01" $4="[16/Oct/2017:23:59:59"{a[$1]++}END{for(i in a){print a[i],i|"sort -k1 -nr |head -n 10"}}' access.log

17、获取当前时间前一分钟日志访问量

# date=`date +%d/%b/%Y:%H:%M --date="-1 minute"` ; awk -vd=$date '$0~d{c++}END{print c}' access.log# date=`date +%d/%b/%Y:%H:%M --date="-1 minute"`; awk -vd=$date '$4="["d":00" $4="["d":59"{c++}END{print c}' access.log # grep `date +%d/%b/%Y:%H:%M --date="-1 minute"` access.log |awk 'END{print NR}'# start_time=`date +%d/%b/%Y:%H:%M:%S --date="-5 minute"`;end_time=`date +%d/%b/%Y:%H:%M:%S`;awk -vstart_time="[$start_time" -vend_time="[$end_time" '$4=start_time $4=end_time{count++}END{print count}' access.log

18、找出1-255之间的整数

方法1:# ifconfig |grep -o '[0-9]\+' #+号匹配前一个字符一次或多次方法2:# ifconfig |egrep -o '\([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\'

19、找出IP地址

# ifconfig |grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' #-o只显示匹配字符

20、给文档增加开头和结尾说明信息

# awk ‘BEGIN{print "开头显示信息"}{print $1,$NF} END{print "结尾显示信息"}’/etc/passwd# awk 'BEGIN{printf " date ip\n------------------\n"} {print $3,$4} END{printf "------------------\nend...\n"}' /var/log/messages date ip------------------03:13:01 localhost10:51:45 localhost------------------end...

21、查看网络状态命令

# netstat -antp #查看所有网络连接# netstat -lntp #只查看监听的端口信息# lsof -p pid #查看进程打开的文件句柄# lsof -i:80 #查看端口被哪个进程占用

22、生成8位随机字符串

方法1:# echo $RANDOM |md5sum |cut -c 1-8方法2:# openssl rand -base64 4方法3:# cat /proc/sys/kernel/random/uuid | cut -c 1-8

23、while死循环

while true; do #条件精确等于真,也可以直接用条件[ "1" == "1" ],条件一直为真ping -c 2

24.awk格式化输出

将文本列进行左对齐或右对齐。

左对齐:# awk '{printf "%-15s %-10s %-20s\n",$1,$2,$3}' test.txt右对齐:# awk '{printf "%15s %10s %20s\n",$1,$2,$3}' test.txt

25.整数运算保留小数点

方法1:# echo 'scale=2; 10/3;'|bc #scale参数代表取小数点位数方法2:# awk BEGIN'{printf "%.2f\n",10/3}'

26.数字求和

# cat a.txt10235356方法1:#!/bin/bashwhile read num;dosum=`expr $sum + $num`done a.txtecho $sum方法2:# cat a.txt |awk '{sum+=$1}END{print sum}'

27、判断是否为数字(字符串判断也如此)

# [[ $num =~ ^[0-9]+$ ]] echo yes || echo no #[[]]比[]更加通用,支持模式匹配=~和字符串比较使用通配符`^ $:从开始到结束是数字才满足条件=~:一个操作符,表示左边是否满足右边(作为一个模式)正则表达式

28、删除换行符并将空格替换别的字符

# cat a.txt |xargs echo -n |sed 's/[ ]/|/g' #-n 不换行# cat a.txt |tr -d '\n' #删除换行符

29、查看文本中20至30行内容(总共100行)

方法1:# awk '{if(NR 20 NR 31) print $0}' test.txt方法2:# sed -n '20,30p' test.txt 方法3:# head -30 test.txt |tail

30、文本中两列位置替换

# cat a.txt60.35.1.15 awk '{print $2"\t"$1}' a.txt

Linux 里面命令行打开计算器 怎么输入

linux命令行计算器

详细文档请 man bc

在windows下,大家都知道直接运行calc,(c:\windows\system32\calc.exe),可以打开计算器。

注:

calculate vt.vi.

计算;calculator n. 计算器。calc就是这个计算的简写。

Ca在化学中是代表钙元素,calcium 

钙(20号元素,符号Ca)。两者有什么联系呢?

calculate 来自calculus,原义是做算术运算的小石子,是calx(石灰石)的小称。

那么在linux系统下,有无与windows下calc.exe类似的计算器呢?

下面总结linux下的三个命令,来介绍一下linux下的计算方法:

1)bc

bc在默认的情况下是个交互式的指 令。在bc工作环境下,可以使用以下计算符号:

+ 加法

- 减法

* 乘法

/ 除法

^ 指数

% 余数

如:

#

bc

bc 1.06

Copyright 1991-1994, 1997, 1998, 2000 Free Software Foundation,

Inc.

This is free software with ABSOLUTELY NO WARRANTY.

For details type `warranty'.

3+6           

=加法

9

4+2*3          =加法、乘法

10

(4+2)*3        =加法、乘法(优先)

18

4*6/8         

=乘法、除法

3

10^3         

=指数

1000

18%5           =余数

3+4;5*2;5^2;18/4     

=一行输入多个计算,用;相隔。

7

10

25

4

quit            =退出

# bc

bc 1.06

Copyright 1991-1994, 1997, 1998, 2000 Free Software Foundation,

Inc.

This is free software with ABSOLUTELY NO WARRANTY.

For details type `warranty'.

scale=3        

=设小数位

1/3

.333

quit

以上是交互的计算,那到也可以 不进行交互而直接计算出结果。

A.用echo和|法,如:

# echo "(6+3)*2" |bc

18

# echo 15/4 |bc

3

# echo "scale=2;15/4"

|bc

3.75

# echo "3+4;5*2;5^2;18/4"

|bc

7

10

25

4

另外,

bc除了scale来设定小数位之外,还有ibase和obase来其它进制的运算。

如:

//将16进制的A7输出为10进制, 注意,英文只能大写

# echo "ibase=16;A7"

|bc

167

//将2进制的11111111转成10进制

# echo "ibase=2;11111111"

|bc

255

//输入为16进制,输出为2进制

# echo "ibase=16;obase=2;B5-A4"

|bc

10001

对于bc还有补充,在bc --help中还可以发现:bc后可以接文件名。如:

# more calc.txt

3+2

4+5

8*2

10/4

# bc calc.txt

5

9

16

2

2)expr

expr命令可不光能计算加减乘除哦,还有很多表达式,都可以计算出结果,不过有一点需要注意,在计算加减乘除时,不要忘了使用空格和转义。下

面直接用实例来介绍一下expr的运算,如:

# expr 6 +

3      

(有空格)

9

# expr 2 \*

3     

(有转义符号)

6

# expr 14 % 9

5

# a=3

# expr

$a+5         

(无空格)

3+5

# expr $a +

5        

(变量,有空格)

8

#

a=`expr 4 + 2`

echo $a

6

# expr $a + 3

9

另外,expr对于字串的操作(计算)也是很方便的,如:

//字串长度

# expr length

"yangzhigang.cublog.cn"

21

//从位置处抓取字串

# expr substr "yangzhigang.cublog.cn"

1 11

yangzhigang

//字串开始处

# expr index

"yangzhigang.cublog.cn" cu

13

3)dc

用dc来进行计算的人可以不多,因为dc与bc相比要复杂,但是在进行简单的计划时,是差不多的,不算难。dc为压栈操作,默认也是交互的,但

也可以用echo和|来配合打算。

如:

# dc

3

2+

p

5

4*

p

20

quit

# echo 3 2+ 4* p |dc

20

4)echo

echo用来进行回显,是周知的事。上面也配合bc来进行计算。其实echo也可以单独进行简单的计算,如:

# echo $((3+5))

8

# echo $(((3+5)*2))

16

echo还可以进行变量的计算,如:

# a=10

# b=5

# echo $(($a+$b))

15

# echo $a+$b

10+5

# echo $a+$b |bc

15

//计算前天的日期

#  echo `date

+%Y%m%d`

20090813

#  echo `date +%Y%m%d`-2

20090813-2

#  echo `date +%Y%m%d`-2

|bc

20090811

5)AWK

awk在处理文件的时,可以进行运算,那当然也可以单单用来计算了,如:

# awk 'BEGIN{a=3+2;print

a}'

5

# awk 'BEGIN{a=(3+2)*2;print

a}'

10

Awk 支持常见的运算符, 如 + (加),- (减), * (乘), / (除), ^ 或 ** (乘方), % (取模)

等等。 此外, awk 也提供了一些常用的数学函数, 比如 sin(x), cos(x), exp(x), log(x),

sqrt(x), rand()。 使用这些运算符和函数可以直接进行一些简单的运算:

# echo | awk '{print

8+6}'

14

# echo | awk '{print

8/6}'

1.33333

# echo | awk '{print

9%5}'

4

请放心使用

有问题的话请追问

满意请及时采纳,谢谢

linux常用命令有哪些

Linux常用命令大全100条:

1,echo “aa” 》 test.txt 和 echo “bb” 》》 test.txt

//》将原文件清空,并且内容写入到文件中,》》将内容放到文件的尾部

2,chmod go+w -R /home/zhangy //给组用户和其他用户添加写的权限

3,tar -tzvf test.tar.gz //列出归档内容

4,du -ah //查看文件列表大小

5,du -sh //查看所有文件的大小总和

6,echo ‘1+2’|bc -l //数学运算

7,uname -a //查看linux内核等的一些信息

8,badblocks -s /dev/sda //坏道扫描时显示进度

9,time command //查看命令的运行时间

10,ls -lrt //按时间的倒序排序

11,rsync -P //同步时显示进度

12.history -c //清楚历史命令

13,cd - //返回上次目录

14,tree //显示目录树

15,umount -n /mnt/hda2 //强制卸载

16,echo ~/ //显示用户的home目录

17,echo $[5*5]e799bee5baa6e997aee7ad94e78988e69d8331333337376265 //算术运算

18,echo $((5*5)) //算术运算

19,eval ls;ps aux|grep httpd //这二个命令都能执行

20,free -m //有MB为单位显示内存

21,uptime

//显示系统已经运行了多长时间,它依次显示下列信息:现在时间、系统已经运行了多长时间、目前有多少登陆用户、系统在过去的1分钟、5分钟和15分钟内的平均负载

22,加法运算

[root@krlcgcms01 mytest]# let a=34+3;

[root@krlcgcms01 mytest]# echo $a;

23,export //查看所有环境变量

24,echo $PATH //查看单个变量

25,cmp file1 file2 //文件内容比对

26,clear //清屏

27,echo 23423 |awk --re-interval ‘/[0-9]{3,}/’ //如果不加re-interval的话,不显示

28,cal //得到一个整齐的日历格式

29,wc -l //统计行数,wc -w 统计单词

30,echo “AaDCbd23” |tr “[A-Z]” “[a-z]” 大写变小写,echo “AaDCbdc23” |tr -c b-d =

将b-d之外的字符串替换成=

31,echo “ADSF” | iconv -f UTF8 -t GBK //把字符由utf8转成gbk

-f是from和简写,-t好像terminal的简写

32,cat -n file //内容的前面会显示行号

33,chattr +i file //只读,root用户也没法对其进行修改

34,lsattr file //查看文件属性

35,cat /etc/passwd |awk -F: ‘{print $1}’ //查看系统中所有用户

36,cat /etc/group //查看系统中所有的组

37,groups //查前当前用户所在的,所有组

38,usermod -g 组名 用户 //这种方式是覆盖的方式,用的时候要小心,如果用户A性于mysql usermod -g php

mysql这样的话只属于php了

39,usermod -G 组名 用户 //这种方式是增加的方式,如果用户A性于mysql usermod -g php

mysql这样的话,mysql就属于2个组了

40,bc //进入数学计算中去

41,umask 003 u权限是7,g权限是7,其他用户是4,也就是774,777-003=774

42,mkfs -t vfat /dev/hda6 //将移动硬盘里面的一个分区格式化成vfat格式

43,mount /dev/cdrom /media/cdrom //挂载cdrom

44,getent group 532 //通过组ID,来查找组信息

45,last //登录成功用户记录

46,lastb //登录不成功用户记录

47,dump -S /dev/sda2 //查看一下要备份/dev/sda2所要的容量

48,dump -0j -f /dev/hda2/sda2_bak.dump.bz2 /dev/sda2 //将sda2进行备份并压缩

49,restore -t -f /dev/hda2/sda2_bak.dump //查看备份信息

50,restore -r -f /dev/hda2/sda2_bak.dump //还原备份

51,fc-list //查看系统中安装的字体

52,find 。/ -type f -exec grep -q “root” {} ; -exec echo {} ;

//查找目录下文件所包涵的字符串

53,vmstat 5 //每5显示一下次系统信息,cpu,memory,i/o等

54,top 后 在shift + P 所占进程的排序显示

55,top 后 在shift + M 所占内存的排序显示

56,iptraf -g //查看各个接口的流量

57,ostat -d -x /dev/sda2 2 //用iostat查看磁盘/dev/sda2的磁盘i/o情况,每两秒刷新一次

58, paste -sd ‘|||n’ test //文件的每4行转换成1行,并用|隔开

59,lsof -i :22 //知道22端口现在运行什么程序

60,lsof -c abc //显示abc进程现在打开的文件

61,lsof -p 12 //看进程号为12的进程打开了哪些文件

63,route //查看路由信息

64,ifup //开启网卡

65,ifdown //关闭网卡

66,route del -net 172.168.0.0 netmask 255.255.0.0 dev eth0 //删除

172.168这个网段

67,route add -net 172.168.10.0 netmask 255.255.255.0 dev eth0 //增加一个路由

68,netstat -tunl //列出监听的网络服务端口

69,netstat -tun //列出已连接的网络服务端口

70,nmap -sP 172.30.4.0/24 //在这个网段内有多少用户在我的主机上操作,一个不错的安全检查工具

71,vgdisplay //查看系统中的可用空间

72,lvextend -L+20G /dev/tank/part1 //向part1这个分区增加20G的空间

73,lvresize -L-10G /dev/tank/part2 //向part2这个分区减少10G的空间

74,pvdisplay //查看磁盘信息

75,mplayer -loop 10 /mnt/song/music/花儿开了.mp3 //循环播放10遍

76,pacman -S firefox -nd //nd去掉依赖

77,wget -c //断点下载

78,chroot /mnt/ubuntu //改变根目录到/mnt/ubuntu

79,ctrl+a //命令行下,光标称动到开头

80,ctrl+e //命令行下,光标移动结尾

81,cut -d: -f 1-4 test //用:分割文件,取分割后的1-4列

82,file /home/zhangy/test.php //用于查看文件的一些基本信息

83,touch test.txt //创建一个空文件 text.txt

84,htpasswd -cbd /usr/local/nginx/conf/authfile //创建访问控制文件

85,df //查看磁盘空间,和当前的磁盘数

86,fdisk -l //查看所有磁盘数

87,alsamixer //进入后,m键可以实现静音

88,killall httpd //把所有httpd进程杀掉

89,killall -9 mysqld_safe //有些进程超级用户也停止不了,-9是强制删除

90,mirror /mysql //下载mysql目录

91,mirror -R /mysql //上传mysql目录

92,rmmod pcspkr //关掉tab提示音

93,modprobe pcspkr //开启tab提示音

94,gpasswd -a zhangy wheel //将zhangy这个用户添加到wheel这个组

95,dd if=/dev/zero of=/virtual/ubuntu.virt.img bs=1M count=4096

//创建一个4G的IMG镜像

96,lspic //显示pci设备

97,lsusb //显示usb设备

98,history | less //less根more有点像,感觉less用着更舒服点

99,ln -s //如果忘了-s就变成硬链接了

100,tar zxvf test.tar.gz -C /home/zhangy //将内容解压到指定目录


当前名称:linux运算指数命令,linux算术运算符
分享链接:http://hbruida.cn/article/dsecopj.html