linux如何执行文件

linux如何执行文件

linux如何执行.sh文件

linux下执行.sh文件的方法

 1、  .sh文件就是文本文件,如果要执行,需要使用chmod a+x xxx.sh来给可执行权限。 

  

  是bash脚本么

  可以用touch test.sh #创建test.sh文件

  vi test.sh #编辑test.sh文件

  加入内容

  #!/bin/bash
  mkdir test

  保存退出。

  chmod a+x test.sh #给test.sh可执行权限

  如test,sh文件在 /home/work文件下

  执行

  方法一 本身目录下运行

  进入 cd /home/workwen文件下

行者AI 行者AI

行者AI绘图创作,唤醒新的灵感,创造更多可能

行者AI 100 查看详情 行者AI

  执行 ./test.sh

  命令会在当前目录下创建一个“test”目录。

  方法二 绝对路劲运行

  执行 /home/work/test.sh 

  方法三 本身目录下运行

  sh test.sh

  最后建议:使用

  

  C代码

  1.man sh   

  man sh 来看看sh 的介绍~

推荐:《Linux教程》

linux.sh语法

介绍:1 开头 程序必须以下面的行开始(必须放在文件的第一行):#!/bin/sh 符号#!用来告诉系统它后面的参数是用来执行该文件的程序。在这个例子中我们使用/bin/sh来执行程序。 当编写脚本完成时,如果要执行该脚本,还必须使其可执行。 要使编写脚本可执行: 编译 chmod +x filename 这样才能用./filename 来运行2 注释 在进行shell编程时,以#开头的句子表示注释,直到这一行的结束。我们真诚地建议您在程序中使用注释。 如果您使用了注释,那么即使相当长的时间内没有使用该脚本,您也能在很短的时间内明白该脚本的作用及工作原理。3 变量 在其他编程语言中您必须使用变量。在shell编程中,所有的变量都由字符串组成,并且您不需要对变量进行声明。要赋值给一个变量,您可以这样写:#!/bin/sh #对变量赋值: a=”hello world”# 现在打印变量a的内容: echo “A is:” echo $a有时候变量名很容易与其他文字混淆,比如: num=2 echo “this is the $numnd” 这并不会打印出”this is the 2nd”,而仅仅打印”this is the “,因为shell会去搜索变量numnd的值,但是这个变量时没有值的。可以使用花括号来告诉shell我们要打印的是num变量: num=2 echo “this is the ${num}nd” 这将打印: this is the 2nd4 环境变量 由export关键字处理过的变量叫做环境变量。我们不对环境变量进行讨论,因为通常情况下仅仅在登录脚本中使用环境变量。5 Shell命令和流程控制在shell脚本中可以使用三类命令:1)Unix 命令: 虽然在shell脚本中可以使用任意的unix命令,但是还是由一些相对更常用的命令。这些命令通常是用来进行文件和文字操作的。 常用命令语法及功能 echo “some text”: 将文字内容打印在屏幕上 ls: 文件列表 wc –l file   wc -w file   wc -c file: 计算文件行数;计算文件中的单词数;计算文件中的字符数 cp sourcefile destfile: 文件拷贝 mv oldname newname : 重命名文件或移动文件 rm file: 删除文件 grep ‘pattern’ file: 在文件内搜索字符串比如:grep ’searchstring’ file.txt cut -b colnum file: 指定欲显示的文件内容范围,并将它们输出到标准输出设备比如:输出每行第5个到第9个字符cut -b5-9 file.txt千万不要和cat命令混淆, 这是两个完全不同的命令 cat file.txt: 输出文件内容到标准输出设备(屏幕)上 file somefile: 得到文件类型 read var: 提示用户输入,并将输入赋值给变量 sort file.txt: 对file.txt文件中的行进行排序 uniq: 删除文本文件中出现的重复行,比如: sort file.txt | uniq expr: 进行数学运算Example: add 2 and 3   为   expr 2 “+” 3 find: 搜索文件比如:根据文件名搜索find . -name filename -print tee: 将数据输出到标准输出设备(屏幕) 和文件比如:somecommand | tee outfile basename file: 返回不包含路径的文件名比如: basename /bin/tux将返回 tux dirname file: 返回文件所在路径比如:dirname /bin/tux将返回 /bin head file: 打印文本文件开头几行 tail file : 打印文本文件末尾几行 sed: Sed是一个基本的查找替换程序。可以从标准输入(比如命令管道)读入文本,并将 结果输出到标准输出(屏幕)。该命令采用正则表达式(见参考)进行搜索。不要和shell中的通配符相混淆。比如:将linuxfocus替换为 LinuxFocus :cat text.file | sed ’s/linuxfocus/LinuxFocus/’ >newtext.fileawk: awk 用来从文本文件中提取字段。缺省地,字段分割符是空格,可以使用-F指定其他分割符。 cat  file.txt | awk -F, ‘{print $1 “,” $3}’这里我们使用,作为字段分割符,同时打印第一个和第三个字段。如果该文件内容如下: Adam Bor, 34, IndiaKerryMiller, 22, USA命令输出结果为:Adam Bor, IndiaKerry Miller, USA2) 概念: 管道, 重定向和 backtick 这些不是系统命令,但是他们真的很重要。 管道 (|) 将一个命令的输出作为另外一个命令的输入。 grep “hello” file.txt | wc -l 在file.txt中搜索包含有”hello”的行并计算其行数。 在这里grep命令的输出作为wc命令的输入。当然您可以使用多个命令。 重定向:将命令的结果输出到文件,而不是标准输出(屏幕)。 > 写入文件并覆盖旧文件 >> 追加到文件的尾部,保留旧文件内容。 反短斜线 使用反短斜线可以将一个命令的输出作为另外一个命令的一个命令行参数。 命令: find . -mtime  -1  -type  f  -print 用来查找过去24小时(-mtime –2则表示过去48小时)内修改过的文件。如果您想将所有查找到的文件打一个包,则可以使用以下linux 脚本: #!/bin/sh # The ticks are backticks (`) not normal quotes (‘): tar -zcvf  lastmod.tar.gz `find . -mtime -1 -type f -print`3) 流程控制 1.if “if” 表达式 如果条件为真则执行then后面的部分: if ….; then …. elif ….; then …. else …. fi 大多数情况下,可以使用测试命令来对条件进行测试。比如可以比较字符串、判断文件是否存在及是否可读等等… 通常用” [ ] “来表示条件测试。注意这里的空格很重要。要确保方括号的空格。 [ -f “somefile” ] :判断是否是一个文件 [ -x “/bin/ls” ] :判断/bin/ls是否存在并有可执行权限 [ -n “$var” ] :判断$var变量是否有值 [ “$a” = “$b” ] :判断$a和$b是否相等 执行man test可以查看所有测试表达式可以比较和判断的类型。 直接执行以下脚本: #!/bin/sh if [ “$SHELL” = “/bin/bash” ]; then echo “your login shell is the bash (bourne again shell)” else echo “your login shell is not bash but $SHELL” fi 变量$SHELL包含了登录shell的名称,我们和/bin/bash进行了比较。 快捷操作符 熟悉C语言的朋友可能会很喜欢下面的表达式: [ -f “/etc/shadow” ] && echo “This computer uses shadow passwors” 这里 && 就是一个快捷操作符,如果左边的表达式为真则执行右边的语句。 您也可以认为是逻辑运算中的与操作。上例中表示如果/etc/shadow文件存在则打印” This computer uses shadow passwors”。同样或操作(||)在shell编程中也是可用的。这里有个例子: #!/bin/sh mailfolder=/var/spool/mail/james [ -r “$mailfolder” ]‘ ‘{ echo “Can not read $mailfolder” ; exit 1; } echo “$mailfolder has mail from:” grep “^From ” $mailfolder 该脚本首先判断mailfolder是否可读。如果可读则打印该文件中的”From” 一行。如果不可读则或操作生效,打印错误信息后脚本退出。这里有个问题,那就是我们必须有两个命令: ◆打印错误信息 ◆退出程序 我们使用花括号以匿名函数的形式将两个命令放到一起作为一个命令使用。一般函数将在下文提及。 不用与和或操作符,我们也可以用if表达式作任何事情,但是使用与或操作符会更便利很多。

以上就是linux如何执行文件的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/336640.html

赞 (0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小米10显示拦截的短信设置方法
上一篇 2026年11月7日 06:13:30
如何使用Swoole创建TCP服务器和客户端?
下一篇 2026年10月17日 12:34:07

相关推荐

  • linux文件是什么文件

    linux文件是什么文件linux文件是什么文件linux文件是什么文件linux文件是什么文件

    linux文件是什么文件? Linux文件系统 Linux文件系统中的文件是数据的集合,文件系统不仅包含着文件中的数据而且还有文件系统的结构,所有Linux 用户和程序看到的文件、目录、软连接及文件保护信息等都存储在其中。 推荐:《Linux教程》 文件系统 在Linux中普通文件和目录文件保存在称…

    2026年11月7日 • 用户投稿
    100
  • linux系统升级后网络不稳定的解决方法

    linux系统升级后网络不稳定的解决方法linux系统升级后网络不稳定的解决方法linux系统升级后网络不稳定的解决方法linux系统升级后网络不稳定的解决方法

    解决方法: 先查看防火墙状态 root@localhost #service iptables status 若显示Firewall is stopped.表明防火墙已经关掉 若没有 ,请敲入命令 #:service iptables stop 接着使用命令: 法语写作助手 法语助手旗下的AI智能写…

    2026年11月7日 • 用户投稿
    000
  • linux系统启动步骤

    linux系统启动步骤linux系统启动步骤linux系统启动步骤linux系统启动步骤

    linux启动步骤: 1:首先bios加电自检,初始化(这个过程会检测相关硬件(cpu,内存,显卡,硬盘等)) 2:加载内核,读取/boot里边的配置文件 3:启动初始化进程,开始运行/sbin/init 4:读取/etc/initab确定运行级别 5:根据/etc/rc.d/rcN.d加载开机启动…

    2026年11月7日 • 用户投稿
    400
  • linux抛出找不到文件异常的解决方法

    linux抛出找不到文件异常的解决方法linux抛出找不到文件异常的解决方法linux抛出找不到文件异常的解决方法linux抛出找不到文件异常的解决方法

    场景: 项目在windows下访问正常,linux下抛异常,找不到文件。 分析: 如果访问的项目文件是这样的:abc/bcd/aa.jpg ,而系统中访问文件的路径是:abc/Bcd/aa.jpg,两者的区别是二级目录bcd写成了Bcd。 如果在windows下开发的小伙伴们,是发现不了错误的,wi…

    2026年11月7日 • 用户投稿
    600
  • ftp无法连接登录linux的解决方法

    ftp无法连接登录linux的解决方法ftp无法连接登录linux的解决方法ftp无法连接登录linux的解决方法ftp无法连接登录linux的解决方法

    1、首先安装vsftpd 命令: yum -y install vsftpd 之后开启服务: service vsftpd start 2、关闭防火墙 1) 重启后生效  开启: chkconfig iptables on 关闭: chkconfig iptables off 2) 即时生效,重启后…

    2026年11月7日 • 用户投稿
    000
  • 《博德之门3》推出Steam Deck原生版本 性能表现大幅提升!

    《博德之门3》推出Steam Deck原生版本 性能表现大幅提升!《博德之门3》推出Steam Deck原生版本 性能表现大幅提升!《博德之门3》推出Steam Deck原生版本 性能表现大幅提升!《博德之门3》推出Steam Deck原生版本 性能表现大幅提升!

    拉瑞安近日宣布,《博德之门3》现已实现对Steam Deck的原生支持。这一更新让游戏在掌机设备上能够以更稳定的帧率运行,显著提升了加载速度与整体流畅度。在此前,《博德之门3》虽可通过Proton兼容层在Steam Deck上运行,体验尚可,但仍受限于一定的性能瓶颈。 官方在声明中表示:“《博德之门…

    2026年11月7日 • 用户投稿
    100
  • Linux安装NodeJS应用怎么用npm_npm-install命令详解

    Linux安装NodeJS应用怎么用npm_npm-install命令详解Linux安装NodeJS应用怎么用npm_npm-install命令详解Linux安装NodeJS应用怎么用npm_npm-install命令详解Linux安装NodeJS应用怎么用npm_npm-install命令详解

    npm install 是 Node.js 项目中安装依赖的核心命令,根据执行环境和参数不同可安装全部依赖、指定包或全局工具;2. 常见用法包括:无参数安装 package.json 中所有依赖,npm install 安装特定包并记录到 dependencies,–save-dev 添…

    2026年11月7日 • 用户投稿
    200
  • linux远程服务器无法SSH登录的原因及解决方法

    linux远程服务器无法SSH登录的原因及解决方法linux远程服务器无法SSH登录的原因及解决方法linux远程服务器无法SSH登录的原因及解决方法linux远程服务器无法SSH登录的原因及解决方法

    问题说明 Linux远程服务器突然无法SSH登录了,登陆报错: ssh_exchange_identification: read: Connection reset by peer。 问题原因 安装MySQL数据库过程中修改了var目录的权限。 解决方法 将SSH相关文件的权限改回来,确保权限为7…

    2026年11月7日 • 用户投稿
    000
  • linux环境下phpcms后台验证码不显示

    linux环境下phpcms后台验证码不显示linux环境下phpcms后台验证码不显示linux环境下phpcms后台验证码不显示linux环境下phpcms后台验证码不显示

    网站环境: Linux CentOSphp5.2.10apache 2.2.11Zend Opt3.3.3 原因: checkcode.php生成的是.jpg格式的文件,但是phpinfo()没有显示支持jpg格式。 解决方法: 立即学习“PHP免费学习笔记(深入)”; 1、下载 jpegsrc.v…

    2026年11月7日 • 用户投稿
    000
  • Linux如何创建新目录 mkdir命令及选项说明

    Linux如何创建新目录 mkdir命令及选项说明Linux如何创建新目录 mkdir命令及选项说明Linux如何创建新目录 mkdir命令及选项说明Linux如何创建新目录 mkdir命令及选项说明

    !!!! 在Linux系统中,创建新目录最常用的方法是使用 mkdir 命令。这个命令简单实用,但如果你只是知道 mkdir 目录名 的基本用法,那可能还没发挥出它的全部潜力。 创建单个目录:最基础的用法 使用 mkdir 创建一个目录非常直接: %ignore_pre_1% 例如: mkdir m…

    2026年11月7日 • 用户投稿
    000
  • linux下文件乱码怎么办?

    linux下文件乱码怎么办?linux下文件乱码怎么办?linux下文件乱码怎么办?linux下文件乱码怎么办?

    linux下文件乱码怎么办? Linux下对文件操作经常会遇见乱码问题,我在网上搜了一些解决方法,希望能对大家有所帮助。 如果你需要在Linux中操作windows下的文件,那么你可能会经常遇到文件编码转换的问题。Windows中默认的文件格式是GBK(gb2312),而Linux一般都是UTF-8…

    2026年11月7日 • 用户投稿
    100
  • linux发行版本有哪些

    linux发行版本有哪些linux发行版本有哪些linux发行版本有哪些linux发行版本有哪些

    linux发行版本有哪些? Linux 的发行版本可以大体分为两类: ● 商业公司维护的发行版本,以著名的 Red Hat 为代表; ● 社区组织维护的发行版本,以 Debian 为代表。 推荐:《Linux教程》 很难说大量 Linux 版本中哪一款更好,每个版本都有自己的特点。下面为大家介绍几款…

    2026年11月7日 • 用户投稿
    100
  • Windows 10 现在可以运行 Linux GUI 应用程序了~

    Windows 10 现在可以运行 Linux GUI 应用程序了~Windows 10 现在可以运行 Linux GUI 应用程序了~Windows 10 现在可以运行 Linux GUI 应用程序了~Windows 10 现在可以运行 Linux GUI 应用程序了~

    在微软的build 2021开发者大会上,宣布了一项重大更新:现在可以通过linux的windows子系统(wsl)运行linux gui应用程序。 原文来自:bleepingcomputer 链接:https://www.php.cn/link/3ffedfdaa29dbf097fb6724d2e…

    2026年11月7日 • 用户投稿
    000
  • linux怎么登录?

    linux怎么登录?linux怎么登录?linux怎么登录?linux怎么登录?

    linux怎么登录? 进入系统(登录)   1、超级用户登录; 超级用户的用户名为root,密码在安装系统时已设定。系统启动成功后,屏幕显示下面的提示: localhost login: 这时输入超级用户名”root”,然后键入回车键。此时,用户会在屏幕上看到输入口令的提示:…

    2026年11月7日 • 用户投稿
    500
  • 如何通过命令行工具诊断网络延迟问题?

    首先使用ping检测本地网络和外部连通性,再通过traceroute或mtr追踪路径,定位延迟高或丢包的具体跳点,结合结果判断问题在本地、ISP或目标网络,并采取重启设备、联系ISP等相应措施。 通过命令行工具诊断网络延迟问题,核心在于系统性地利用一系列工具,从本地网络到互联网骨干,逐步定位延迟发生…

    2026年11月7日
    000
  • linux系统日志在哪?

    linux系统日志在哪?linux系统日志在哪?linux系统日志在哪?linux系统日志在哪?

    linux系统日志在哪? 日志文件的默认路径是:/var/log 下面是几个重要的日志文件的路径及其包含的信息 /var/log/syslog:它和/etc/log/messages日志文件不同,它只记录警告信息,常常是系统出问题的信息。 /var/log/messages:包括整体系统信息,其中也…

    2026年11月7日 • 用户投稿
    000
  • linux有哪些软件?

    linux有哪些软件?linux有哪些软件?linux有哪些软件?linux有哪些软件?

    linux有哪些软件? Linux平台常用软件总结(Ubuntu版) 从Windows转到Linux也有一段时间了,前段时间又重装了系统,从Ubuntu13.10升级到了14.04。Ubuntu13.10bug还是较多的,直接升级貌似又有各种各样的问题,所以我没有选择直接升级,而是重装。装软件,配置…

    2026年11月7日 • 用户投稿
    000
  • 双系统安装过程中,误删 Windows 分区,数据还能恢复吗?

    双系统安装过程中,误删 Windows 分区,数据还能恢复吗?双系统安装过程中,误删 Windows 分区,数据还能恢复吗?双系统安装过程中,误删 Windows 分区,数据还能恢复吗?双系统安装过程中,误删 Windows 分区,数据还能恢复吗?

    数据能否恢复取决于是否被覆盖。立即停用硬盘并用WinPE启动,通过DiskGenius或R-Studio等工具扫描恢复,切勿写入原盘。固态硬盘因TRIM指令难恢复,机械硬盘成功率较高。若DIY失败或数据重要,应求助专业机构,注意费用与隐私安全。 双系统安装过程中不小心把Windows分区删了,数据还…

    2026年11月7日 • 用户投稿
    100
  • linux有哪些系统

    linux有哪些系统linux有哪些系统linux有哪些系统linux有哪些系统

    linux不仅系统性能稳定,而且是开源软件。与其他操作系统相比 ,功能强大,成本低。那么linux系统有哪些?下面小编就为大家盘点常用的八个linux系统,希望对大家有所帮助。   推荐教程:linux教程 linux有哪些系统?   1. Debian   Debian运行起来极其稳定,这使得它非…

    2026年11月7日 • 用户投稿
    000
  • 查看linux是centos还是ubuntu的方法

    查看linux是centos还是ubuntu的方法查看linux是centos还是ubuntu的方法查看linux是centos还是ubuntu的方法查看linux是centos还是ubuntu的方法

    查看linux是centos还是ubuntu的方法 以下总结了4种区分centos和ubuntu系统的方法。 1、lsb_release -a 如果是想查看你的Linux系统是Ubuntu还是CentOS,可以使用lsb_release -a命令,lsb_release -a命令可以列出你的Linu…

    2026年11月7日 • 用户投稿
    000

发表回复

登录后才能评论
关注微信