wahahams 2012-06-11
wc命令,统计指定文件的字节数、字数、行数;
-l 行数;
-c 字节数;
-w 字数;
举例:获取CPU核心数: cat /proc/cpuinfo | grep processor | wc -l
其中 /proc/cpuinfo记录着CPU的详细信息如图:
我们看到每个核心都有“processor :0 ”行
使用grep processor将该行滤出,再使用wc -l 统计行数便可获得核心数。
该命令用于使我们的程序来适配不同硬件平台。
Linux磁盘管理常用三个命令为df、du和fdisk。列出文件系统的磁盘使用状况 - 「df」。磁盘分区表操作 - 「fdisk」。磁盘分区工具 - 「parted」。-c - 创建文件系统时检查磁盘损坏情况。-v - 显示详细信息。Shell脚本是一种
在实际测试工作中,经常要将安卓手机通过wifi代理的形式连接到本机的fiddler或charles服务器代理进行抓包测试。最近一直在想,有没有什么方法可以自动设置安卓手机的wifi代理,曾经想通过修改安卓系统配置文件的方式来修改但是没有找到解决方案。最后决
个人对PowerShell也不是很熟悉,开始的时候就突然看到开始菜单中多了个叫PowerShell的文件夹,后来一点就看到某个教程视频说PowerShell很厉害但也没怎么听,再后来就看到kali也有了一些PowerShell的脚本这才意识到PowerSh
今天是远程办公的第4天,渐渐的找到了一点在家办公的节奏了,改了几个shell脚本,在改动过程中,发现还有一些知识点需要巩固,这里写出来,加深下印象。关于$符号,大家肯定都不陌生,在shell脚本中,$的作用还是比较大多的,这里将所有的$组合都列出来,大家可
今天没干什么正事儿,都开了会了,写点儿关于shell脚本语言的知识吧,这个也是前两天完成一个业务方的需求的时候使用到的方法,分享出来,希望对大家有点用吧。这种最常见的,就是在脚本中需要输出日志的时候,打印日志的生成时间,而打印的方法,我比较习惯于使用下面的
select W in `ls /dev/sd*|grep -o 'sd[b-z]'|uniq` quit. echo -e "/dev/${W}"1" /data/${W}"1" xfs defaults
在脚本的开头加注释,说明脚本作者、编写时间、脚本功能,最好可以加上脚本的版本号。shell中脚本注释用#,注释语句和#号之间有一个空格。变量命名要统一规范,shell变量建议使用全部大写,意思清晰明了,如果是多个字符,可以采用下划线进行切割,如APACHE
Select an editor. To change later, run 'select-editor'.注意,新创建的cron作业,不会马上执行,至少要过2分钟才执行。如果重启cron服务则会马上执行。ubuntu默认安装了cron,是开机自启动的。
正则可以实现一些简单的功能,并用在脚本中,如检测ip地址是否符合规范,检测文件名是否符合规范等等。正则表达式主要是用来描述一个句法规则的模式。其实说的通俗一点,就是利用字符和元字符的组合,对一些符合既定句法的模式进行模糊匹配。它的主要功能是文本查询和字符串
是显示最后命令的退出状态,0表示没有错误,其他表示有错误。不同点:$* 和 $@ 都表示传递给函数或脚本的所有参数,不被双引号(" ")包含时,都以"$1" "$2" …"$n"
正向反弹是目标机先执行nc命令,然后kali上再进行nc监听,即可反弹shell。此方法在ubuntu下不会反弹成功,CentOS可以反弹成功。注意php反弹shell的这些方法都需要php关闭safe_mode这个选项,才可以使用exec函数。转化为常规
ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v inet6|awk '{print $2}'|tr -d "addr:". 假设某个机器有192.*.*.8和10.*.*.*网段的IP,现
sed命令作为一个强大的shell命令,可以快速删除任意特定的行列,配合awk命令可以轻松地操作批量处理文件,下面就来看看吧!-e[默认选项]:只在命令行输出,而文件不改变。有了以上的这几个命令,就可以非常轻松地对文件进行处理咯?
每次进入shell都要设置开头,很麻烦,现修改vim配置文件即可。之后新建一个shell ,开头就会有固定的格式。这是在root用户下的配置,切换到用户使用shell 可能还是什么都没有,不过一般都是用root用户进行机器的管理。不加sudo 没有权限进入
set 指令可根据不同的需求来设置当前所使用 shell 的执行方式,同时也可以用来设置或显示 shell 变量的值。当指定某个单一的选项时将设置 shell 的常用特性,如果在选项后使用 -o 参数将打开特殊特性,若是 +o 将关闭相应的特殊特性。而不带
lrwxrwxrwx 1 root root 4 Mar 26 2018 /bin/sh -> dash
采用$0,$1,$2..等方式获取脚本命令行传入的参数,值得注意的是,$0获取到的是脚本路径以及脚本名,后面按顺序获取参数,当参数超过10个时,需要使用${10},${11}....才能获取到参数,但是一般很少会超过10个参数的情况。
反弹shell往往是在攻击者无法直接连接受害者的情况下进行的操作,原因有很多,例如目标是局域网,或者开启防火墙的某些策略等情况,而这时,我们就可以让受害者主动向攻击者发起连接,被控端发起请求到控制端某端口,并将其命令行的输入输出转到控制端,从而实现交互。L
0代表输入 ,0>&1 意思是,将输出的窗口上所输入的值当作当前窗口的输入。反弹shell后会有两个窗口,即靶机的shell窗口跟攻击机的shell口。2代表标准错误输出。这是因为我们已经将所有的输出都重定向到了外部主机上,但问题是现在我们的
sed 是 stream editor 的缩写,流编辑器,主要用于对标准输出或文件进行处理。# -n 只打印静默模式匹配行,而不输出原行。# -e 追加一组编辑命令。# -f 把所有编辑命令保存在文件中,适用于复杂编辑操作。# -E 支持扩展正则表达式。#
echo -e "\033[1;32;31m检测到节点umask值非022,将为您执行修改操作!ansible dragon -m shell -a "sed -i 's/^.*umask.*/umask 022/g' /etc/pro
echo "您的光盘未挂载,接下来将自动进行挂载!echo "/dev/sr0 /media/cdrom iso9660 defaults 0 0" >> /etc/fstab. echo &quo
利用shell脚本实现每隔60秒磁盘内存数据监控。echo -n "监控本机IP地址:"$xtip. echo "-----磁盘使用情况-----". echo -n "系统磁盘总容量:"$cpr
本节程序实现函数定义与调用,注意调用函数是不要使用括号,代码如下:。本节程序实现向被调用函数传递参数,$0是运行该脚本的shell传递的参数从$1开始、传递多个参数是以空格分隔,代码如下:。与$*相同,但是使用时加引号,并在引号中返回每个参数。显示Shel
正则表达式对于系统管理员来说是非常重要的,熟练运用正则表达式可使工作变得更加简单、方便。简单来说,是一种匹配字符串的方法,通过一些特殊符号,实现快速查找、删除、替换某个特定字符串。正则表达式对于系统管理员来说是非常重要的,系统运行过程中会产生大量的信息,这
本文转载自微信公众号「Linux开发那些事儿」,作者LinuxThings。在Linux开发中,经常会编写shell脚本来执行一些任务,通常是一个脚本只做一件事,随着任务的增加,脚本会越来越多,可复用的地方也会逐渐增加,这时就需要提取出脚本中的公共的功能放
本文转载自微信公众号「Linux开发那些事儿」,作者 LinuxThings 。平常写shell脚本的过程中,经常要用到日期的运算,比如:日期的加减、与UTC时间换算,比较大小等等,下面就来聊一聊这些常用的日期运算。上面的例子中,date +%u 命令是计
本篇和大家分享的是 Spring Boot 打包并结合 Shell 脚本命令部署,重点在分享一个shell 程序启动工具,希望能便利工作;通常一套程序分为了很多个部署环境:开发,测试,uat,线上 等,我们要想对这些环境区分配置文件,可以通过两种方式:。通
Sampler是一个用于shell命令执行,可视化和告警的工具。其配置使用的是一个简单的YAML文件。为什么我需要它?你可以直接从终端对任意动态进程进行采样 – 观察数据库中的更改,监控MQ动态消息,触发部署脚本并在完成后获取通知。如果有一种方法可以使用s
由于工作需要,最近重新开始拾掇shell脚本。虽然绝大部分命令自己平时也经常使用,但是在写成脚本的时候总觉得写的很难看。毕竟shell脚本这个东西不算是正经的编程语言,他更像是一个工具,用来杂糅不同的程序供我们调用。同时,由于历史原因,shell有很多不同
OpenAI API即将彻底改变编码。好吧,这很容易; 它应该是pwd。如果要导航到/ tmp文件夹怎么办?现在,您最想知道的是,用于计算当前文件夹中python文件数量的命令是什么?类型的f -name'* .py'| wc -l。这并不难,也可以通过其
系统性能一直是一个受关注的话题,如何通过最简单的设置来实现最有效的性能调优,如何在有限资源的条件下保证程序的运作?ulimit 是Linux在处理这些问题时,经常使用的一种简单手段。ulimit 是一种 Linux 系统的内建功能,它具有一套参数集,用于为
-f filename 如果 filename 为常规文件,则为真 [ -f /usr/bin/grep ]. -x filename 如果 filename 可执行,则为真 [ -L /usr/bin/grep ]
物理内存free值:# free -m | grep Mem | awk '{print $4}' 缓冲区的free值:# free -m | grep - | awk '{print $4}' Swap分区free值:# free -m | grep
对于Linux用户而言,命令行操作我们已经非常熟悉了。与其他流行的操作系统不同,在Linux社区中,使用命令行与使用图形用户界面执行类似任务相比,命令行通常可以提供更优雅,更有效的解决方案。随着Linux社区对命令行的依赖不断增长,UNIX shell已发
在本文中,我将研究如何创建 shell 脚本来运行简单的 .NET Core 应用程序。之所以有这个研究议题,是因为本站数据库需要每天定时备份,并在备份完成后,将备份文件上传远程云存储,保证了数据安全。由于数据库备份是 shell 脚本执行,而备份文件上传
公司用到的MySQL数据库,经常有同事通过一顿骚操作把一些关键的配置数据误删,每次恢复都要花上不少时间,于是写了个shell脚本,结合corntab每天凌晨备份数据库,并保留7天。同样的备份脚本也可用于生产环境MySQL数据库定时备份。上述脚本中指定了要备
函数可以让我们将一个复杂功能划分成若干模块,让程序结构更加清晰,代码重复利用率更高。像其他编程语言一样,Shell也支持函数。Shell函数必须先定义后使用。可以带function关键字使用function fun_name()来定义,也可以直接给出函数名
反引号和$()的作用相同,用于命令替换,即完成引用的命令的执行,将其结果替换出来,与变量替换差不多。原本的意图是要在`command2 `command3` `中先将command3替换出来给command2处理,然后再将结果传给command1处理。然而
Shell在使用的过程中,经常会使双引号或者单引号将字符串括起来,也可以不使用引号来定义字符串变量。这三种方式有什么区别呢?单引号定义字符串所见即所得,即将单引号内的内容原样输出,或者描述为单引号里面看到的是什么就会输出什么。单引号是全引用,被单引号括起的
如何在其它Shell脚本中调用first.sh呢?主要有三种方法:source、点号以及sh命令。注意,点号与脚本文件之间记得要有空格。使用source命令和点号.是等价了,类似于C/C++中的#include预处理指令,都是将指定的脚本内容拷贝至当前的脚
echo "shell命令{$shell}成功执行"; 注意,system()会将shell命令执行之后,立马显示结果,这一点会比较不方便,因为我们有时候不需要结果立马输出,甚至不需要输出,于是可以用到exec()
最开始接触电脑的时候,是因为网络游戏,那时候就是只会用开关机和玩游戏,后来自学转行到IT界之后,就慢慢的接触到了Linux系统了。要远程操作Linux的话还是得靠SSH工具,一般来说,Linux是打开了默认22端口的SSH的服务端,如果我们要远程它的话,就
不管是哪种语言,日期/时间都是一个非常重要的值。比如我们保存日志的时候,往往是某个前缀再加上当前时间,这样日志文件名称就可以做到唯一。在Shell环境里,我们获取时间的命令是date,但date出来的时间日期格式、内容可能不是我们所想要的,所以我们可能需要
[15:43:[emailprotected] myshell]#[[ $file == .txt ]][15:43:[emailprotected] myshell]#echo $?1若作为通配符不要加"",加引号相当于转义。数组定义
从RealVNC网站: VNC代表虚拟网络计算。VNC是免费和公开可用的,并在广泛活跃使用的数百万人在整个工业,学术界和私人。RealVNC可以在这里下载。数据是一个包含全局内存对象的STGMEDIUM结构。结构的hGlobal成员指向一个NRESARRA
像其他语言一样,Shell 也可以包含外部脚本,将外部脚本的内容合并到当前脚本。两种方式的效果相同,简单起见,一般使用点号(.),但是注意点号(.)和文件名中间有一空格。例如,创建两个脚本,一个是被调用脚本 subscript.sh,内容如下:
大家好,我是良许。大家都知道,在 Linux 系统中,有环境变量和 Shell 变量这两种变量。环境变量是在程序及其子程序中全局可用的,常常用来储存像默认的文本编辑器或者浏览器,以及可执行文件的路径等等这样的信息。而 Shell 变量仅在当前 Shell
生产环境中的应用场景:根目录下建立数量不等的目录,挂载不同的硬盘,按sdb-sdn的顺序对应/data2-/datan,就需要for循环嵌套来解决,写成如for i in 1 2 3 ,for j in a b c,1a,2b,3c这样而for循环似乎
不论前端还是后端,再学会Linux的基础上,还应该学会写一些简单的Shell。不止是工作,日常中想做一些东西,如果手动做就很累人也费时间,如果你会用Shell脚本处理就很简单了,本文普及的shell的一些基础知识。后面还会持续更新。变量只能由大小写字母,数