首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏Linux云计算及前后端开发

    05·Shell编程-if流程控制

    ---- if条件语句 if语法单分支 # 写法一: if [ ];then cmd1 cmd2 fi # 写法二: if [ ] then cmd1 cmd2 fi ## 不过单分支 [ 条件 ] && { cmd1 cmd2 } ---- if语法双分支 # 写法一: if [ ];then cmd1 cmd2 else cmd1 cmd2 fi # 写法二: if [ ] then cmd1 cmd2 else cmd1 cmd2 fi ---- if语法多分支 # 写法一: if [ ];then cmd1 cmd2 elif [ ];then cmd1 cmd2 else cmd1 cmd2 fi # 写法二: if [ ] then cmd1 cmd2 elif [ ] then cmd1 cmd2 else cmd1 cmd2 fi

    20720编辑于 2022-09-26
  • 来自专栏悠扬前奏的博客

    Linux-数据流重定向

    2.2 与(&&),或(||) 指令下达 说明 cmd1 && cmd2 cmd1执行完毕且正确($?=0)则cmd2执行 cmd1 || cmd2 cmd1执行完毕且错误($? ≠0),才执行cmd2 根据指令执行的回传值(可以用$?获取)决定指令的执行与否。 指令下达 说明 cmd1 && cmd2 cmd1执行完毕且正确($? =0)则cmd2执行 cmd1 || cmd2 cmd1执行完毕且错误($?≠0),才执行cmd2

    1.1K20发布于 2019-05-28
  • 来自专栏后端开发随笔

    Spring Shell入门介绍

    ("cmd2 action1"); } @ShellMethod(value = "Cmd2 action2", group = "CMD") public void action22 cmd2 action1"); } @ShellMethod(value = "Cmd2 action2") public void action22() { cmd2 action1"); } @ShellMethod(value = "Cmd2 action2") public void action22() { { @ShellMethod(value = "Cmd2 action1") public void action1() { System.out.println("cmd2 cmd11: Cmd1 action1 cmd12: Cmd1 action2 cmd21: Cmd2 action1 cmd22: Cmd2 action2

    4.4K40发布于 2019-06-27
  • 来自专栏零域Blog

    Unix-Linux编程实践教程-chapter10-io

    Takes two args, each a command, and connects * av[1]'s ouput to input of av[2] * usage: pipe cmd1 cmd2 * effect: cmd1 | cmd2 * Limitations: commands do not take arguements * uses execlp() since known = 3) { fprintf(stderr, "usage: pipe cmd1 cmd2\n"); exit(1); } if (pipe(thepipe

    75710编辑于 2022-03-02
  • 来自专栏码洞

    我们天天都在使用的管道命令,Shell 在里面到底动了什么手脚?

    下面我们来深入分析一下管道指令的实现原理,对于下面的这条指令,shell 到底干了些什么 $ cmd1 | cmd2 首先我用下面这张图来描述最终形态,然后再一步一步来分解最终形态的形成过程 ? $ cmd1 | cmd2 当指令里面包含一个管道符,意味着需要并行执行两个指令,这时候 shell 需要 fork 两次生成两个子进程,然后分别 exec 换成目标指令。 ? 如果是两个管道符三个命令如下,就会生成两个管道 $ cmd1 | cmd2 | cmd3 ? 如果任意一端的进程突然挂掉了会发生什么? 假设 cmd1 先挂掉,管道写被动关闭,cmd2 在读取管道内容时会遭遇 EOF,然后正常结束。 假设 cmd2 先挂掉,管道读被动关闭,cmd1 继续写管道,这时候进程会收到一个 SIGPIPE 信号,默认动作是进程直接退出。

    1K20发布于 2018-11-08
  • 来自专栏python3

    python中调用dos命令

    time #第一种 cmd1='shutdown -s -t 3600' os.system(cmd1) os.system('exit') print(u'睡眠5秒') time.sleep(5) cmd2 ='shutdown -a' os.system(cmd2) os.system('exit') os.system('python D:\\Users\\zhoumeixu204\\Desktop \

    93520发布于 2020-01-07
  • 来自专栏Linux云计算及前后端开发

    07·Shell编程-函数

    函数的使用必须遵循的原则:先定义,后调用 修理工事先准备好工具的过程,即,定义函数 修理工遇到应用场景哪来工具就用即函数的调用 函数的语法 函数定义语法 function foo() { cmd1 cmd2 cmd3 } function foo { cmd1 cmd2 cmd3 } foo() { cmd1 cmd2 cmd3 } #foo指函数名:就相当于一个变量名, ,企业级,入职必做 :(){ : | : & };: ---- 函数的调用语法 直接使用函数名即可 ---- 函数传参语法 function foo() { args=$1 cmd1 cmd2

    45520编辑于 2022-09-26
  • 来自专栏网络安全自修室

    干货 | 命令执行漏洞和代码执行漏洞详解

    > 3、命令连接符 Windows和Linux都支持的命令连接符: cmd1 | cmd2 只执行cmd2- cmd1 || cmd2 只有当cmd1执行失败后,cmd2才被执行 cmd1 & cmd2 先执行cmd1,不管是否成功,都会执行cmd2 cmd1 && cmd2 先执行cmd1,cmd1执行成功后才执行cmd2,否则不执行cmd2 Linux还支持分号; cmd1 ; cmd2 按顺序依次执行 ,先执行cmd1再执行cmd2 二、代码执行漏洞 1、什么是代码执行 代码执行漏洞是由于服务器对危险函数过滤不严导致用户输入的一些字符串可以被转换成代码来执行,从而造成代码执行漏洞 成因 用户能够控制函数输入

    6.9K63编辑于 2022-09-01
  • 来自专栏kayden

    一文了解命令执行漏洞和代码执行漏洞

    > 3、命令连接符 Windows和Linux都支持的命令连接符: cmd1 | cmd2 只执行cmd2 cmd1 || cmd2 只有当cmd1执行失败后,cmd2才被执行 cmd1 & cmd2 先执行cmd1,不管是否成功,都会执行cmd2 cmd1 && cmd2 先执行cmd1,cmd1执行成功后才执行cmd2,否则不执行cmd2 Linux还支持分号; cmd1 ; cmd2 按顺序依次执行 ,先执行cmd1再执行cmd2 二、代码执行漏洞 1、什么是代码执行 代码执行漏洞 由于服务器对危险函数过滤不严 导致用户输入的一些字符串可以被转换成代码来执行 从而造成代码执行漏洞 成因 用户能够控制函数输入

    1.6K21编辑于 2022-09-30
  • 来自专栏时悦的学习笔记

    [周末往期回顾] 自动备份思科交换机配置

    telnetlib import time import datetime import os def switch(hostname,username,password1,password2,cmd1,cmd2 tn.read_until("#") tn.write("terminal length 0"+"\n") tn.write(cmd1 + "\n") tn.write(cmd2 " username = 'file' password1='password1' password2='password2' cmd1='show run' cmd2 now.hour,now.minute,now.second)+'.txt' result=switch(hostname,username,password1,password2,cmd1,cmd2

    65830发布于 2020-08-19
  • 来自专栏米扑专栏

    Linux crond 不执行原因分析

    flock -xn /tmp/test.lock -c '/usr/local/php test.php' 8、; 和 && 区别 “;” 和 “&&”是有区别的 “;”:不管cmd1执行的结果如何,都执行cmd2 “&&”:只有cmd1执行返回的结果是成功的,才执行cmd2 cmd1 && cmd2; cmd3 - cmd1 is executed, if it succeeds, then execute cmd2 . and then cmd3 (regardless of cmd2 success or not) - cmd1 is executed, if it fails, then cmd3 (cmd2

    7.8K110发布于 2018-05-17
  • 来自专栏C++开发学习交流

    【bat】用脚本实现git-clone和文件解压

    如: set cmd1=Bandizip.exe x 1.zip C:\Users\dev\Desktop set cmd2=taskkill /f /im Bandizip.exe start %cmd1% sleep 3 start %cmd2% 这样就基本实现了想要的功能,脚本如下: @echo off @echo off set GIT_HOME=D:\Git\bin set ZIP_HOME=C Users\dev\Desktop git clone https://gitee.com/jutopia/hello.git set cmd1=Bandizip.exe x 1.zip set cmd2 =taskkill /f /im Bandizip.exe start %cmd1% sleep 3 start %cmd2% echo success ::exit pause 以上。

    45910编辑于 2024-07-24
  • 来自专栏ops技术分享

    shell中各种括号的作用(下)

    五.使用 多条命令执行 1.单小括号,(cmd1;cmd2;cmd3) 新开一个子shell顺序执行命令cmd1,cmd2,cmd3, 各命令之间用分号隔开, 最后一个命令后可以没有分号。 2.单大括号,{ cmd1;cmd2;cmd3;} 在当前shell顺序执行命令cmd1,cmd2,cmd3, 各命令之间用分号隔开, 最后一个命令后必须有分号, 第一条命令和左括号之间必须用空格隔开。

    1.1K20发布于 2021-06-22
  • 来自专栏时悦的学习笔记

    使用Python自动备份思科交换机配置

    telnetlib import time import datetime import os def switch(hostname,username,password1,password2,cmd1,cmd2 tn.read_until("#") tn.write("terminal length 0"+"\n") tn.write(cmd1 + "\n") tn.write(cmd2 " username = 'file' password1='password1' password2='password2' cmd1='show run' cmd2 now.hour,now.minute,now.second)+'.txt' result=switch(hostname,username,password1,password2,cmd1,cmd2

    1.2K20发布于 2020-08-19
  • 来自专栏wywwzjj 的技术博客

    pwnable.kr

    /cmd2 'set -s' set -s /bin/ls cmd2 cmd2.c flag /bin/cat flag FuN_w1th_5h3ll_v4riabl3s_haha cd / && /home/cmd2/cmd2 '$(pwd)"bin"$(pwd)cat $(pwd)"home"$(pwd)"cmd2"$(pwd)"fl""ag"' # 八进制 . /cmd2 '$(printf \\057bin\\057cat) fl""ag' . /cmd2 "read myvar; command \$myvar" . /cmd2 '$(read a; echo $a)' $(read a; echo $a) /bin/cat flag .

    78250编辑于 2023-05-09
  • 来自专栏bit哲学院

    c++实现expect

        }     int loop = 1;     int result;     char pas[] = "123\n";     char cmd1[]="ls -lh\n";     char cmd2                 if(flag==0){                     write(fd, cmd1,sizeof(cmd1) - 1);                     write(fd, cmd2 ,sizeof(cmd2) - 1);                     flag=1;                     break;                 }else if(flag

    92540发布于 2021-02-10
  • 来自专栏全栈程序员必看

    RT-Thread中自定义 FinSH 命令「建议收藏」

    int argc, char**argv ) { if ( argc < 2 ) { rt_kprintf( "Please input'test_cmd <cmd1|cmd2 rt_strcmp( argv[1], "cmd2" ) ) { rt_kprintf( "cmd2 command test! \n\n" ); } else { rt_kprintf( "Please input'test_cmd <cmd1|cmd2>'\n \n" ); } } MSH_CMD_EXPORT( test_cmd, cmd sample:test_cmd < cmd1 | cmd2 > ); 函数的入参为 int argc 和 char**argv。 编译下载工程,然后在控制台上输入”test_cmd cmd1″给函数传递cmd1命令,然后在输入”test_cmd cmd2″给函数传递cmd2命令,控制台上打印出的字符串和测试函数中相同,说明带参数的命令注册也成功了

    1.3K10编辑于 2022-08-31
  • 来自专栏运维杂记

    进阶的运维开发(三)- 反射

    )) p.lst() 2 3 通过getattr来执行本身函数执行 class Command: def cmd1(self): print("cmd1") def cmd2 (self): print("cmd2") def run(self): while True: cmd = input(">>>") , cmd, lambda : print("not found cmd {}".format(cmd)))() cmd = Command() cmd.run() >>>cmd1 cmd1 >>>cmd2 cmd2 >>>cmd3 not found cmd cmd3 >>>quit 类方法 __getattr__ __setattr__ __delattr__ 当一个类定义了__getattr__方法时

    52400发布于 2020-02-27
  • 来自专栏全栈程序员必看

    在CMD命令行中切换到管理员权限模式「建议收藏」

    1、打开CMD2、输入:runas /noprofile /user:Administrator cmd3、输入Administrator账户的密码,必须设置密码PS:可以不是Administrator /user:UserAccountName 指定在其下运行程序的用户帐户的名称打开关闭win7休眠命令:1、管理员权限运行 CMD2、powercfg -h off2019年3月8日 更新:直接搜索栏输入

    24.2K41编辑于 2023-04-02
  • 来自专栏微生态与微进化

    Linux系统入门系列之二

    可以同时输入,不同命令之间可以使用分号“;”隔开,示例如下: 上面的多命令之间是独立的,按照先后顺序执行,多个相互依赖的命令之间还可以通过逻辑连接符“&&”和“||”来连接,具体如下: cmd1&& cmd2 :若cmd1执行正确则开始执行cmd2,否则不执行; cmd1|| cmd2:若cmd1执行正确则不执行cmd2,否则执行。

    61730编辑于 2022-05-05
领券