cmd执行shell脚本提示引用文件不存在
throughshell脚本中执行时提示“没有那个文件或目录”的解决办法
windows运行sh脚本_运行脚本命令
LEFT
出现bad interpreter:No such file or directory的原因,是文件格式的问题。这个文件是在Windows下编写的。换行的方式与Unix不一样,但是在vim下面如果不Set一下又完全看不出来。
问题分析:
1、将windows 下编写好的SHELL文件,传到linux下执行,提示出错。
问题原因:
因为作系统是windows,在windows下编辑的脚本,所以有可能有不可见字符。脚本文件是DOS格式的
解决方法:
可以有很多种办法看这个文件是DOS格式的还是UNIX格式的, 还是MAC格式的
(1) vim filename
然后用命令 :set ff
可看到dos或unix的字样,如果的确是dos格式的, 那么用set ff=unix把它强制为unix格式的,,然后存盘退出后就可运行。
转换不同平台的文本文件格式可以用
1. unix2dos或dos2unix这两个小程序来做. 很简单. 在djgpp中这两个程序的名字叫dtou和utod, u代表unix, d代表dos
mv -f tmp_fil{ENTER}orename filename
特别说明:^M并不是按键shift + 6产生的^和字母M, 它是一个字符, 其ASCII是0x0D, 生成它的办法是先按CTRL+V, 然后再回车(或CTRL+M)
另外, 当SHELL程序报告command not found时, 总是去检查一下你的PATH里面有没有程序要用到的每一个命令(没指定路径的那种). 你这么小的程序, 可以一行一行核对。
附:少写一个/引发的没有那个文件或目录问题
今天在翻看以前写的简单的shell脚本时,发现一个问题:
原来的脚本:
(试试看你能否一眼看出错误)
cmd执行shell脚本提示引用文件不存在shell脚本编写时的系统和执行脚本的系统不一致,比如在windows系统编写的脚本,放到linux系统时会遇到此问题。windows下编写的.sh文件为dos格式,而linux只能执行格式为unix格式的脚本。如果你想直接执行,那么可以通过source test.sh或者…/test.sh来执行,如果不起作用,在执行第二步。
windows下python实现自动ssh网络设备执行多条命令并保存显示结果用什么库实现?
# 遍历当前目录下的所有子文件夹carehan.send(command.encode('ascii') + 2. 也可以用sed 这样的工具来做:b'\n')
command可以从txt文档来读取,show出现more问题,我 就不知道怎么解决了。
如何在Android上使用plugin-x
即每一行的行尾以\r\n来标识, 其ASCII码分别是0x0D, 0x0A.目前plugin-x中定义了4个协议:ProtocolAds, ProtocolAnalytics, ProtocolIAP, ProtocolSocial。编写自己的插件,不需要写任何的c++/jni代码或者jascript绑定代码。我们已经在plugin-x的核心层实现了这些,开发者所要做的就是:
新建一个android工程。
使用ja实现我们定义的接口。
plugin的文件夹结构
请确保你的plugin文件夹结构类似下图:
proj.android : 插件的android工程文件{F7}夹.
proj.ios : 插件的ios工具文件夹.
注意:pulish.sh工具的实现会依赖这样的文件夹结构。
实现插件
在Eclipse中导入plugin protocol 的安卓工程
工程的文件夹结构类似下图:
build.xVmidml : publish.sh脚本使用它,可以从其他插件工程拷贝过来,注意要修改工程名。
ForManifest.xml : DevGuide.sh使用它. 如果你的插件在AndroidManifest.xml开启了一些额外的权限,需要把他们添加到这个文件中。
sdk : 把第三方SDK的jar包放在这里。
src : 把你的插件实现代码放在这里。
编写ja类实现至少一个接口
这个类应该有一个带有Context参数的构造函数,例如:
public class AnalyticsFlurry implements InteceAnalytics {
...
public AnalyticsFlurry(Context context) {
mContext = context;
}}
你可以覆盖接口中的方法,或者定义自己的方法,例如:
@Override
public String getSDKVersion() {
return "3.2.1";
}protected void setUserId(String userId) {
LogD("setUserId invoked!");
final String curUser = userId;
PluginWrapper.runOnMainThread(new Runnable() {
@Override
public void run() {
try {
FlurryAgent.setUserId(curUser);
} catch(Exception e){
LogE("Exception in setUserId", e);
}}
});
}目前plugin-x只支持传递int, float, boolean, String, JSONObject类型的参数,返回值类型只可以是int, float, boolean, String。
perl 、shell、python三种脚本语言那种好学、易用
如果log目录也不存在就也自己创建一下。我觉得perl学、最易用。
虽然相比起来,shell的内容更少,可能有人认为shell更好学,其实如果学perl也只学那些内容,你会发现更加简单的。
而且perl相对shell有两个优点,一是功能多得多,shell能做的事情非常少,计算和复杂流程控制都非常憋足;二是跨平台,WINDOWS下也可以用。
学东西不要挑三拣四,在有on时间的情况下这三个都学一下。
shell是作linux的基本,是必须学的。学shell就是学linux命令。
perl有强大的正则表达式支持,对于文本处理非常强悍,玩linux不得不学。
python作用一种面向对象的,能作为linux脚本的语言,学好之后能帮你很好地完成工作。
我建议的学习顺序是shell-----perl------python。这是因为shell学好之后基本上已经够用了,其它两个算是锦上添花。当你有时间再学一下。
shell在linux/unix上面很常用的,其实我觉得shell不算什么正式的程序语言,不过是脚本,学会的话可以方便很多日常开发工作。
perl是很老的语言,字符串处理非常强,不过有很多弊病,呵呵,还点过时咯。
python是面向对象的语言,库非常丰富,google app engin长安商品能买进的价格:扇子3800以下;武器4000以下;佛珠7000以下; 棉布3500以下地府商品能买进的价格:纸钱3000以下;夜明珠8000以下;首饰4300以下;珍珠5500以下北具商品能买进的价格:铜油4000以下;铃铛4300以下;人参7500以下; 衣甲2700以下长寿商品能买进的价格:鹿茸7500以下;符5300以下;面粉3000以下; 木料4400以下傲来商品能买进的价格:酒4000以下; 蜡烛2000以下;帽子3500以下; 盐5500以下懂得这些,我们就开始跑商之之旅吧!e有python的版本。
学的大概是shell吧。
直接学ruby吧,融合了各种语言的长处……
不过在linux下,建议还是了解一下shell和perl吧,用的最多了。
学python 然后shell perl
perl没啥大用 全是黑客在玩
跑脚本是什么意思
当./运行时总是提示: (bash: ./hello.sh: bin/bash: 坏的解释器: 没有那个文件或目录),但是当用sh运行时正确.问题一:跑脚本的是什么 如果.不在PATH里面,要执行当前目录下的可执行文件,使用全路径:
package org.cocos2dx.plugin;./executable-file
如果要执行一个sh脚本,不管那个脚本有没有可执行权限,都可以使用:
sh [file]
这时file是作为参数传给sh的,如果file不在当前目录下,也需要使用全路径。
全路径有路径和相对路径两种。./和../开头的都是相对路径,分别表示”在当前目录下”和”在父目录下”。
问题二:电脑跑程序……这是啥意思? 计算机程序计算机程序或者软件程序(通常简称程序)是指一组指示计算机每一步动作的指令,通常用某种程序设计语言编写,运行于某种目标体系结构上。
:
计算机程序(英语:r program),也称为软件(英语:software),简称程序(英语:Program)是指一组指示计算机或其他具有信息处理能力装置每一步动作的指令,通常用某种程序设计语言编写,运行于某种目标体系结构上。打个比方,一个程序就像一个用汉语(程序设计语言)写下的红烧肉菜谱(程序),用于指导懂汉语和烹饪手法的人(体系结构)来做这个菜。
脚本程序
通常,计算机程序要经过编译和链接而成为一种人们不易理解而计算机理解的格式,然后运行。未经编译就可运行的程序通常称之为脚本程序。
程序运行
为了一个程序运行,计算机加载程序代码,可能还要加载数据,从而初始化成一个开始状态,然后调用break某种启动机制。在层上,这些是由一个序列开始的。
在大多数计算机中,作系统例如Windows等,加载并且执行很多程序。在这种情况下,一个计算机程序是指一个单独的可执行的映射,而不是当前在这个计算机上运行的全部程序。
体系结构
在一台基于最常见的冯诺依曼体系结构(又称Harvard Architecture)的计算机上,程序从某种外部设备,通常是硬盘,被加载到计算机里。 如果计算机选择冯诺依曼体系结构,那么程序就被加载入内存。 指令序列顺序执行,直到一条跳转或转移指令被执行,或者一个中断出现。所有这些指令都会改变指令寄存器的内容。
基于这种体系计算机如果没有程序的支持将无法工作。一个计算机程序是一系列指令的 。
程序里的指令都是基于机器语言;程序通常首先用一种计算机程序设计语言编写,然后用编译程序或者解释执行程序翻译成机器语言。 有时,程序也可以用汇编语言编写,汇编语言实质就是表示机器语言的一组记号-在这种情况下,用于翻译的程序叫做汇编程序(Assembler)。
问题三:跑批和跑脚本有分别是什么意思 蔷拾实较小幻
问题四:Linux跑脚本用sh和./有什么区别 如果.不在PATH里面,要执行当前目录下的可执行文件,使用全路径:
./executable-file
如果要执行一个sh脚本,不管那个脚本有没有可执行权限,都可以使用:
sh [file]
这时file是作为参数传给sh的,如果file不在当前目录下,也需要使用全路径。
全路径有路径和相对路径两种。./和../开头的都是相对路径,分别表示”在当前目录下”和”在父目录下”。
问题五:Linux跑脚本用sh和./有什么区别 sh是指用sh来运行
./是指在当前目录用默认方式运行
默认方式看你脚本文件里指定没,如果指定了,就用你指定的,没指定用当前的shell运行。
问题六:loadrunner怎么跑脚本 是要回放还是跑场景啊?。。。
问题七:安卓手机上可以跑shell脚本吗 当然是肯定的。
常用的android shell工具有busybox、adb等
说白了就是,你安装了这些工具软件,你就可以使用shell环境中常用的命令了,例如:echo、cat等
问题八:求oracle运行这个脚本的命令怎么写 比如在d盘下
@ d:\createuser.sql
问题九:genesis跑脚本时提示Error in line 78 - duplicate directive name是什么意思 78行有问题,你打开你的脚本。看下78行是什么。调试调试。如果你懂的话。应该很快就找到问题。如果不懂的话。那。。。。。
问题十:跑商是什么意思? 很多东西都需要帮派贡献,大部分的帮派贡献都是通过跑商来获得的。今天我就教大家如何跑商!跑商无非就是买进卖出,路线无非就是两条:“长安――长寿”“地府――北俱”。知道这些规则之后我们还有知道,各各地方的物品多少钱才能买入:
方法/步骤
1大家先去帮派白虎堂领取任务。先点击“给我些任务”,然后选择不同的银票开始你的跑商之旅~~
可以顺便看一下帮派有没有可以直接买了卖掉的东西。(长寿,北俱的物品)
我先来长安的商人处看了看,发现佛珠的价格挺便宜,我就决定从长安购入佛珠,卖到长寿。(或者从地府买入,到北俱卖出,我比较这两条路线。)
到长寿之后把从长安买到佛珠之后卖到长寿。在长安买的时候6000左右,卖到长寿已经10000多了。跑商就靠倒价。然后大家看一下长寿有没有好东西可以收入囊中,没有的话可以跑回北俱看看。
因为长寿没有合适的,我就果断去了北俱,果然北俱的铜油便宜,果断买入19个。(北俱――地府)
还是那个道理,北俱买完去地府,我们可以直接传送。红点是传送的位置,两个箭头是两个商人的位置。
我发现地府上面的商人收东西贵,果断卖给他
收东西贵的买他东西也贵,收东西便宜的买他东西自然也便宜。所以我直接去下面的商人处买的纸钱
大家可以通过红点所在位置,通过“白无常”传送到天台,然后会帮派交票
到了帮派直接点击给予,把银票给他。
12
然后大家可以获得一个今天的物品奖励
linux下执行sh文件,提示“No such file or directory”
or目测是环境变量 ZSMART_HOME 的问题,看一下是否正常:
sudo 很常用,并且被认为是一个很好的实践。sudo 授予一个用户或组成员权限以执行可能额外需要 root 权限的文件。该用户不需要知道 root 密码。echo $ZSMART_HOME如果环境变量没问题,那就自己把日志文件创建出来就好啦。
mkdiHOMEr $ZSMART_HOME/log
touch $ZSMART_HOME/log/ResidentAnalyseImpl.log
chmod a+w $ZSMART_HOME/log/ResidentAnalyseImpl.log
echo $ZSMART_HOME 试试看有没有路径返回可能是$ZSMART_HOME 失效或者 没有全局定义这个变量
是不是那个变量$ZSMART_HOME的值不对啊,报错信息里的路径是/log/ResidentAnalyselmpl.log,是根目录下的log啊
您好,请问如何删除当前目录下所有名字为SedVariables的子文件夹中的包含指定字符的文件?
删除SedVariables文件夹中所有包含指定字符的文件可以使用脚本或命令行来实现。具体步骤将根据你使用的作系统不同而略有异。以下提供两个示例,一个是使用Windows的批处理脚本,另一个是使sed ‘s/^M//' filename > tmp_filename用Linux或MacOS的Shell脚本。
Windows批处理脚本示例(删除指定字符为"指定字符"的文2、自动终端法(一些可以配置自动net的终端)件):@echo off
setlocal enabledelayedexpansion
for /r %%i in (SedVariables\.) do (
set "filename=%%~nxi"
set "directory=%%~dpi"
if "!filename:指定字符=!" neq "!filename!" (
del "%%ihost"
echo Deleted: "%%i"
))
pause
Linux或MacOS的Shell脚本示例(删除指定字符为"指定字符"的文件):
#!/bin/bash
find . -type d -name "SedVariables" -print0 | while IFS= read -r -d '' directory; do
find "$directory" -type f -name "指定字符" -print0 | while IFS= read -r -d '' file; do
rm "$file"
echo "Deleted: $file"
done
done
使用方法:
将对应的脚本保存为文件(比如delete_files.bat或delete_files.sh);
将脚本文件放置在包含多级子目录的当前目录下;
在命令行或终端中,切换到脚本所在的目录;
执行脚本。
脚本会遍历所有的SedVariables文件夹,查找并删除包含指定字符的文件。删除的文件名和路径将会被输出。请在运行脚本之前先确保备份重要文件,以免误删。
您好!为了实现您的需求,您可以使用 Python 脚本来删除指定字符的文件。以下是一个示例脚本,您可以根据需要进行修改:
```python
import os
指定字符 = ['字符 1', '字符 2', '字符 3'] # 指定要删除的字符,可以是多个
# 获取当前目录的路径
当前目录 = os.getcwd()
for foldername in os.listdir(当前目录):
# 获取子文件夹的路径
子文件夹路径 = os.path.join(当前目录,foldername)
# 判断是否为 SedVariables 文件夹
if foldername == 'SedVariables':
# 遍历 SedVariables 文件夹下的所有文件
for filename in os.listdir(子文件夹路径):
# 判断是否包含指定字符
for char in 指定字符:
if char in filename:
# 构造文件路径
file_path = os.path.join(子文件夹路径,filename)
# 输出要删除的文件名
print(f"将要删除的文件:{file_path}")
# 删除文件
print(f"已删除文件:{file_path}")
```
请将上述代码中的 `指定字符` 列表替换为您需要删除的字符,然后使用 Python 解释器运行该脚本。在运行过程中,脚本会输出要删除的文件名以及已删除的文件名。
如何用c++,做出一个自动net 的程序?``跪求
从命令行运行一般来说ftp做batch处理事务时非常常见的事情。那么如果Batch
ARROWnet,让我们的管理工作更加的轻松呢?
os.remove(file_path)一般来说两种方法:
1、VBS法(Windows
Script
Host)
在这里我们讨论种方法:VBS法。由于Windows
Script
Host是系统自带的,我们不需要安装地方放软件就可以搞定。所以它一般是解决问题的。
首先,我们建立一个名字叫做.vbs的脚本,这里用net
到cisco路由器上作为一个例子,相关内容大家可以修改。
'建立Shell对象
set
sh=WScript.CreateObject("WScript.Shell")
WScript.Sleep
1000
'向net发送我们平时录入的命令
sh.SendKeys
"open
WScript.Sleep
1000
sh.SendKeys
"{ENTER}"
WScript.Sleep
1000
sh.SendKeys
"password{ENTER}"
WScript.Sleep
1000
sh.SendKeys
"en{ENTER}"
WScript.Sleep
1000
sh.SendKeys
"passord{ENTER}"
WScript.Sleep
1000
'运行cisco的show
run命令
sh.SendKeys
"show
run{ENTER}"
然后,建立一个batch_.bat的批处理文件:
rem
启动net
start
net.exe
rem
batch
net
cscript
//nologo
.vbs
,我们只需要运行batch_.bat就可以轻松搞定net的工作了。
对于SendKeys这个命令可以send什么,我们可以看下面的列表:
BACKSPACE
{BACKSPACE},
{BS},
{BKSP}
BREAK
{BREAK}
CAPS
LOCK
{CAPSLOCK}
DEL
DELETE
{DELETE}
{DEL}
DOWN
{DOWN}
END
{END}
ENTER
~ESC
{ESC}
HELP
{HELP}
{HOME}
INS
INSERT
{INSERT}
{INS}
{LEFT}
NUM
LOCK
{NUMLOCK}
PAGE
DOWN
{PGDN}
PAGE
UP
{PGUP}
SCREEN
{PRTSC}
RIGHT
{RIGHT}
SCROLL
LOCK
{SCROLLLOCK}
TAB
{TAB}
UP
{UP}
F1
{F1}
F2
F3
{F3}
F4
{F4}
F5
{F5}
F6
{F6}
F7
F8
{F8}
F9
{F9}
F10
{F10}
F11
{F11}
F12
{F12}
F13
{F13}
F14
{F14}
F15
{F15}
F16
{F16}
SHIFT
+CTRL
^ALT
问题1:如果要在当前路径下,写一个文件a.txt内容为: a b c 如何编写程序?
correctlywindows下的bat脚本,和Linux等Unix系统中的sh脚本,都可以写:
MSYS模拟shel-rl
2、出错信息:bad interpreter: 没有那个文件或目录。python可以写:
查看这个文件可以写:
ESXI 5.5在windows下使用BAT脚本通过SSH进行远程关机?
用这个chan = self.ssh.invoke_shell()网上搜到一段脚本用来关闭vm,再关机的
#get
all
the
VMs
identifiers
VMID=$(/usr/bin/vim-cmd
vmsvc/getallvms
|grep
-v
|awk
$1}')
#loop
all
the
VMs
for
iin
$VMID
do
#get
their
state(turned
on,off,whatr)
STATE=$(/usr/bin/vim-cmd
vmsvc/power.getstate
$i
|tail
-1
|awk
$2}')
#if
they
running,turn
them
off
(only
works
#shutdownif
#vmware
tools
installed
the
VMs)
if
[$STATE
==
]then
/usr/bin/vim-cmd
vmsvc/power.shutdown
$i
fi
done
the
itsel做完这一笔生意之后,我身上已经16.5W了,还1.5W就够了,就便宜买了点皮夹卖到地府,现在是下面的商人收货贵,我就卖到了下面的商人处,正好做完这一笔够交票的条件了!f
sleep
30
/in/shutdown.sh
/in/poweroff
实际也可以通过运行命令
esxcli
maintenanceMode
set
-e
y进入维护模式maintenanceMode(Mode的M为大写)
esxcli
shutdown
poweroff
-d
60
test
关机
问题是虚拟机必须关闭了才能进入维护模式,又回到用脚本来自动关闭虚拟机的问题上来了。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 12345678@qq.com 举报,一经查实,本站将立刻删除。