当前位置:首页 » 编程软件 » 查看shell脚本

查看shell脚本

发布时间: 2023-08-20 22:57:21

1. 如何编写一个shell脚本查看某个进程是否在运行

1 、编写一个shell脚本来查看某个进程是否在运行,用户可以通过ps命令获取所有的进程,然后通过awk命令提取进程名,再用grep提取相应的进程名即可。

2、参考代码如下:

ps-aux|awk'{print$11}'|grep"^$1">/dev/null
case$?in
0)
echo"findprocess$1"
;;
1)
echo"$1isnotrunning"
;;
*)
echo"unknowerror"
esac

3、脚本运行结果如下

2. shell脚本

牙叔教程 简单易懂



用autojs执行shell脚本, 脚本所在目录为 /data/local/tmp



做息屏运行脚本, 要用到类似的方法,


比如息屏使用adb去调用dex文件, 来达到息屏效果,


两者相同的地方是




手机: Mi 8


Android版本: 10


Autojs版本: 9.0.10





非常不幸, 没有权限, 复制文件失败,


所以我们需要要提高权限, Shizuku 可以提升我们的权限到adb级别,


Shizuku的使用请查阅上一篇教程, 激活Shizuku


将权限提升为adb级别之后, 我们重新复制文件


首先, 检查有没有adb权限



复制文件



查看文件yashu.sh权限



可以看到权限是-rw-rw----, 没有执行权限, 接下来, 我们就添加执行权限




code=0, 0表示没有发生错误, 没有错误就意味着, 命令正常执行,


再次查看文件yashu.sh权限



可以看到权限是-rwxrwx--x, 有了执行权限, 接下来, 我们就执行这个shell脚本



shell脚本内容



执行shell脚本的命令




息屏运行脚本使用到的命令与执行shell脚本类似, 这也是我写这篇教程的原因,


方便以后复制黏贴


思路是最重要的, 其他的网络, bing, stackoverflow, github, 安卓文档, autojs文档, 最后才是群里问问

--- 牙叔教程


部分内容来自网络

本教程仅用于学习, 禁止用于其他用途

3. 查看linux内存使用情况的shell脚本


linux
中,/proc/$PID/status
文件提供了该进程资源(内存,堆栈,信号量,子父进程)的使用情况,虽然linux提供了不少查看内存的命令,但都是看整体的使用情况,无法对单个进程的内存使用情况进行查看。
本文为大家提供的这个脚本,通过查看status文件中VmRSS的字段来查看系统或进程使用的内存情况,有需要的朋友不妨参考下。
复制代码:
#!
/bin/bash
echo
-n
PidName
>
/root/script/pid.f
echo
MeMery
>>
/root/script/pid.f
PIDPATH=/proc/
TOTLE=0
cd
$PIDPATH
DOC=`ls`
for
DOCNAME
in
$DOC
do
if
[
-d
$DOCNAME
];
then
cd
$DOCNAME
if
[
-f
status
];then
MEMERY=`grep
VmRSS
status
|
awk
-F':'
'{print
$2}'
|
awk
'{print
$1}'`
PIDNAME=`grep
Name
status
|
awk
-F':'
'{print
$2}'`
if
[
$MEMERY
];
then
echo
-n
$PIDNAME
>>
/root/script/pid.f
echo
-n
>>
/root/script/pid.f
echo
$MEMERY
>>
/root/script/pid.f
TOTLE=`expr
$TOTLE
+
$MEMERY`
cd
..
else
cd
..
fi
else
cd
..
fi
fi
done
TOTLE=`expr
$TOTLE
/
1024`
echo
TOTLE
USERD:
$TOTLE
MB
>>
/root/script/pid.f
cat
/root/script/pid.f

4. 如何查看shell脚本是否正常运行,跪求liunx大神

因为不知道你的是什么脚本,不好判断。

bash -x 检测整个脚本实际运行过程是否正确

对脚本执行加以监控,你可以通过在脚本中加入一些脚本执行状态结果的语句比如导出个日志文件啦,或者对执行结果进行判断啦,如果脚本是驻留在进程里,判断进程中是否有脚本啦,然后给你发个执行结果邮件。还是得根据实际情况写。

5. Shell脚本

因为-c的意思是command,所以bash -c后面应该跟一个command。
shell运行脚本的两种方法:
1、bash xx.sh
2、bash -c "cmd string"

使用bash -c需要注意两点:
1、bash -c "cmd string"接的是shell命令字符串,用双引号括起来
2、bash -c "/path/to/file"接的是文件绝对路径,用双引号括起来,并且文件需要可执行权限

参考链接:
1.1、 linux shell -c,【bash】关于shell中 bash -c 执行命令或者可执行文件
1.2、 【bash】关于shell中 bash -c 执行命令或者可执行文件

示例:/usr/libexec/PlistBuddy -c "cmd string"

参考链接: XCode添加自定义Run Script Phase

由于PlistBuddy并不在Mac默认的Path里,所以我们得通过绝对路径来引用这个工具:

参考链接: PlistBuddy简单使用

6. 第七章 SHELL脚本

在linux里可以直接使用shell脚本进行管理,shell就是命令解释器,把用户的命令翻译成机器语言,在把机器语言翻译成人类语言返回给用户。
shell有Bshell和Cshell区分,经常在linux里面用的shell都是Bshell,Bshell和Cshell完全不兼容。我在Centos里面看见支持的几种shell解释器有sh,bash,csh。然后用的最多的就是base(标准shell)。
shell脚本可以添加执行权限,然后在base命令界面直接输入脚本路径即可执行;所有的脚本开头要声明脚本shell,常见的声明是#!/bin/bash,其他的还有#!/bin/sh,#!/bin/csh

写第一个shell脚本吧

可以使用alias命令查看系统当前的别名,也可以用alias 别名=‘真实命令’ 来执行;

重定向输出是将输出到标准输出设备的数据重新定向到另一个地方;

将标准(键盘)输入重定向到其他一个设备上;

格式:命令1 | 命令2
表示把命令1的执行结果当成命令2的执行条件

跟正则表达式不一样啊,刚才的grep -P就是使用正则,但是这里通配符比较简单啊。

用引号表示,其中单引号标识不解析字符串中的特殊字符,双引号则解析特殊字符。
如果字符串中有存在$(ls)这种,那么这个表示ls命令的执行结果啊
当然这也可以用\进行转义

7. Linux Shell脚本的执行过程

用户登录时,将会取得一个 bash ,这个 bash 在系统中有一个全局唯一的ID,也就是进程的ID,使用命令 ps -ef 并配合 grep 来查看进程ID。 ps -ef|grep bash ,此命令还能查看进程对应的父进程ID,系统中所有进程的祖先进程都是INIT进程(进程ID=1),它是最先启动运行的。
回到 bash 进程,也就是我们的命令行界面,进程的执行都有其附属的执行环境,环境变量就属于其中之一。并且环境变量是可以完全被子进程继承的,也就是说,子进程可以使用父进程的环境变量,但是不能使用父进程的自定义变量。
简而言之: 子进程继承父进程的环境变量,不继承父进程的自定义变量。

shell脚本有4种执行方式,不同的执行方式可能导致结果不一致

四种方式的执行结果如下:

热点内容
副编译 发布:2025-02-04 02:05:25 浏览:613
解压按摩师 发布:2025-02-04 01:21:31 浏览:424
linuxssh限制 发布:2025-02-04 01:20:40 浏览:697
脚本式是什么 发布:2025-02-04 01:06:24 浏览:248
手机wps密码怎么取消密码 发布:2025-02-04 00:51:44 浏览:596
算法逻辑表 发布:2025-02-04 00:51:44 浏览:241
零售股票如何配置主线 发布:2025-02-04 00:51:07 浏览:948
预算法施行时间是 发布:2025-02-04 00:50:30 浏览:342
世界ol上传照片 发布:2025-02-04 00:34:13 浏览:63
有初始化的数组编译提示重复定义 发布:2025-02-04 00:33:21 浏览:584