首页
学习
活动
专区
圈层
工具
发布
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    shell 脚本语法

    脚本在 Linux 运行 Win脚本在Linux执行会报错,由于换行符定义不同,需要将windows文件 转换成 unix文件 可以使用 dos2unix 插件调整脚本 sudo apt-get install...命令执行后返回的状态,用于检査上一个命令执行是否正确(在 Linux中,命令退出状态为0表示该命令正确执行,任何非0值表示命令出错)。...为0 否则非零 若当前文件夹有文件 a #!/bin/bash [ -e a ] echo $? [ -e bbb ] echo $?...为 0,否则非零 逻辑运算符 运算符 英文 含义 && 或 -a and 与操作 || 或 -o or 或操作 !...使用参数同在一般脚本中使用参数时相同, 1, 2, 可以使用 return 返回值 默认无错误返回 0 ,否则返回 1 导入函数 在fun.sh 中定义的函数可以在其他sh文件中引用: source

    2K30

    在一套Dockerfile中完成编译和运行环境部署

    安装操作系统 安装运行时依赖 复制编译结果和依赖 暴露端口(非必须) 重整目录 运行时命令 打包命令和运行命令 效果 参考资料 对于像C、C++这类编译型语言,编译器会直接将代码编译成二进制,然后在操作系统上执行...编译型语言 编译环境 运行环境 C、C++这类语言编译时期往往需要大量的资源,比如本文案例中,编译环境的镜像是2个多G,而运行环境这是1百多M,减少了93%的大小。...FROM ubuntu:22.04 as builder RUN apt-get update && apt-get install -y binutils-dev uuid-dev libssl-dev...&& apt-get install -y libbinutils unzip COPY --from=builder /source/CppServer/bin/cppserver-example-http_server...@@ -3,7 +3,6 @@ set -e cd Unix ./01-generate.sh ./02-build.sh -./03-tests.sh ./04-install.sh if

    1.1K00

    MIPS漏洞调试环境安装-栈溢出

    安装命令: sudo apt-get update sudo apt-get install build-essential autoconf git # https://github.com/devttys0...安装命令: sudo apt-get install qemuapt-get install qemu binfmt-support qemu-user-static 运行: qemu-mipsel ..../setup.sh 接着是安装gdb-multiarch,安装命令: sudo apt-get install gdb-multiarch 安装完毕后,整个远程动态调试的过程为: 1....利用堆栈溢出的可行性:在非叶子函数中,可以覆盖返回地址,劫持程序执行流程;而在非叶子函数中,可通过覆盖父函数的返回地址实现漏洞利用。 栈溢出实例 在有了前面的基础后,最后再介绍一个具体的实例。...-4)data+=p32(stack_finder_addr)data+='a'*0x18data+='/bin/sh\x00'data=data.ljust(0x1a0+0x54,'a')data+=

    2.1K50

    ubuntudebian下安装使用dig

    在ubuntu10.10下没有dig命令,而debian6下面有这个命令 ubuntu下想要apt-get安装,发现没有找到dig软件包 搜索后才发现正确安装是安装dnsutils apt-get install...dnsutils PS:redhat系列这样安装 yum install bind-utils 看看dig命令大多时候如何可以取代nslookup的 root@www:~# dig sina.com...可以发现本地DNS(10.202.72.118)返回了根服务器列表,在一台根服务器(199.7.91.13)查到com.的记录,在其中一台com.中查到了jpuyy.com并返回了NS记录,在NS中找到了...i.root-servers.net. . 493573 IN NS e.root-servers.net. . 493573 IN NS k.root-servers.net. . 493573 IN NS c.root-servers.net...com. 172800 IN NS d.gtld-servers.net. com. 172800 IN NS h.gtld-servers.net. com. 172800 IN NS c.gtld-servers.net

    10.3K10

    【保姆级教程】Docker服务在双架构(X86和ARM)编译统一实践

    /bin/bash # 构建参数 ARCH=$1 # 安装不同的环境依赖 if [ "$ARCH" = "x86_64" ]; then apt-get update && apt-get.../bin/bash # 安装x86架构的环境依赖 apt-get update && apt-get install -y gcc g++ make libssl-dev # 下载并编译golang.../bin/bash # 修改install.sh中的环境依赖 sed -i 's/apt-get install -y gcc g++ make libssl-dev/apt-get install...,还有dup和dup3命令,三者的区别如下 dup(int filedes)函数返回一个可用的与filedes共享文件表项的最小描述符 dup2(int filedes,int filedes2)是使用一个描述符...在Ubuntu系统中,我们可以使用以下命令来安装交叉编译工具: sudo apt-get install gcc-arm-linux-gnueabihf sudo apt-get install gcc-mingw-w64

    3.5K60

    【保姆级教程】Docker服务在双架构(X86和ARM)编译统一实践

    /bin/bash# 构建参数ARCH=$1# 安装不同的环境依赖if [ "$ARCH" = "x86_64" ]; then apt-get update && apt-get install.../bin/bash# 安装x86架构的环境依赖apt-get update && apt-get install -y gcc g++ make libssl-dev# 下载并编译golang程序wget.../bin/bash# 修改install.sh中的环境依赖sed -i 's/apt-get install -y gcc g++ make libssl-dev/apt-get install -y...dup和dup3命令,三者的区别如下dup(int filedes)函数返回一个可用的与filedes共享文件表项的最小描述符dup2(int filedes,int filedes2)是使用一个描述符...在Ubuntu系统中,我们可以使用以下命令来安装交叉编译工具:sudo apt-get install gcc-arm-linux-gnueabihfsudo apt-get install gcc-mingw-w64

    10.8K52

    linux更换shell为zsh并个性化配置oh my zsh

    它负责外界与Linux内核的交互,接收用户或其他应用程序的命令,然后把这些命令转化成内核能理解的语言,传给内核,内核是真正干活的,干完之后再把结果返回用户或应用程序。...原生的是/bin/bash,上图zsh的原因是我更改了它的shell Linux的默认Shell都是 bash,既然如此,那我今天为什么要说zsh呢?只要记住,zsh逼格高!...安装zsh $ apt-get update $ apt-get install zsh 更换系统的shell为zsh $ chsh -s /usr/bin/zsh 默认为bash,完毕之后退出终端重新进入...,样子是这个样子的,非root下,进去会选择,选择2就行 ?...下载oh my zsh $ sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh

    8.1K40
    领券