标签: command

如何自动刷新linux"echo -n"

给出以下bash脚本:

testing.sh:

for i in {1..50}; 
do 
    sleep 0.1;
    echo -n $i;
done
Run Code Online (Sandbox Code Playgroud)

如何使用每个回波实时进行PERL输出?它的工作正常,echo但echo -n似乎让PERL认为它是一个很大的回声,而不是单独的回声.

PERL代码适用于普通回声

$| = 1;

open CMD, "testing.sh 2>&1 |";
         while (<CMD>) {
                print "$_ \r";
        }
close CMD;
Run Code Online (Sandbox Code Playgroud)

如果你运行它,你会发现PERL不会打印任何东西5秒(50*0.1s).如果您只是更改为echo -n,echo那么它将实时输出.

这里的想法是我echo -ne "...\r"在bash中使用命令,我希望使用PERL实现相同的效果.


编辑:

我的1..50例子只是为了证明.实际上我想在PERL中打印一个bash进度条,它将更新如下:

[####..............................................] 6.20%
[####..............................................] 6.40%
[#####.............................................] 7.40%
Run Code Online (Sandbox Code Playgroud)

除了bash将使用\ r而不是\n.这与wget的进度条类似.我希望在PERL中有相同的效果.好处是我看到读取可以通过X字符读取,并且回声将是设定长度.我找不到任何适合我想要做的事情的好例子.


编辑2:

我得到了我需要读的东西......

现在我正在使用进度条来完善它.进度条正好是60个字节,我使用以下内容:

$| = 1;

open CMD, "testing.sh 2>&1 |";

my ($buf, $data, $n);


while (($n = read CMD, $data, 60) …
Run Code Online (Sandbox Code Playgroud)

linux perl command

2
推荐指数
1
解决办法
1259
查看次数

使用sed得到第一个单词

我需要一个打印名称的第一个字母的bash脚本.例如:Ruben Van Den Bosshe成为RVDB或Ken Van de Wilde成为KVdW

我想使用sed命令.

linux bash scripting command sed

2
推荐指数
1
解决办法
4242
查看次数

ICommand.CanExecute async

我有一个Command,检查CanExecute需要很长时间.现在,我问我,是否可以运行CanExecute异步方法?

c# wpf command asynchronous

2
推荐指数
2
解决办法
2685
查看次数

我可以从外部JavaScript访问控制台命令行API(如来自Firebug或Chrome Inspector控制台的$$和traceAll)吗?

是否可以从外部api 访问命令行Api?

简单示例:

HTML

  <div id="myDiv"></div>
  <script src="myScript.js"></script>
Run Code Online (Sandbox Code Playgroud)

myScript.js

$$('#myDiv').textContent = 'this will not work';
Run Code Online (Sandbox Code Playgroud)

我不想加载像jQuery或Zepto这样的外部库,因为像这样的seens已经在本地加载了.

javascript api console firebug command

2
推荐指数
1
解决办法
1394
查看次数

如何从命令提示符发送电子邮件?

有没有办法在linux终端发送一个简单的电子邮件?

to: somebody@gmail.com
sub: Sending email from linux terminal
body: This is a short email sent from linux terminal
Run Code Online (Sandbox Code Playgroud)

我需要设置什么样的堆栈或smtp?我该如何设置它们?

linux email command smtp

2
推荐指数
1
解决办法
1万
查看次数

使用netcat和grep有条件地运行命令

我需要netcat来监听HTTP请求,并根据请求,我需要运行一个脚本.

到目前为止,我有这个;

netcat -lk 12345 | grep "Keep-Alive"
Run Code Online (Sandbox Code Playgroud)

所以每当netcat收到一个包含"keep-alive"的包时,我需要触发一个脚本.

它需要在crontab中运行...

谢谢你的帮助!

linux bash grep command netcat

2
推荐指数
1
解决办法
6593
查看次数

错误:_tkinter.TclError:无法调用“ wm”命令:应用程序已被破坏

我在三个不同的文件上有三个类,以通过GUI获得用户输入

#file1
class GetInfo1():
    def getInfo1():
        #my code
        return info1
#file2
 class GetInfo2():
    def getInfo2():
        #my code
        return info2
 #file3
 class GetInfo3():
    def getInfo3():
        #my code
        return info3
Run Code Online (Sandbox Code Playgroud)

从不同的文件调用这些方法,Getinformation.py 该文件将是

from GetInfo1 import *
from GetInfo2 import *
from GetInfo3 import *

object1 = GetInfo1()
getInfor1 = object1.getInfo1()
print getInfor1

object2 = GetInfo2()
getInfor2 = object2.getInfo2()
print getInfor2

object3 = GetInfo3()
getInfor3 = object3.getInfo3()
print getInfor3
Run Code Online (Sandbox Code Playgroud)

类如下:

from Tkinter import *

root = Tk()
app = Frame(root)

entry = …
Run Code Online (Sandbox Code Playgroud)

python command tkinter object button

2
推荐指数
1
解决办法
9285
查看次数

远程获取默认打印机

Windows 7的:

cscript C:\Windows\System32\Printing_Admin_Scripts\en-US\prnmngr.vbs -g
Run Code Online (Sandbox Code Playgroud)

Windows XP:

cscript C:\windows\system32\prnmngr.vbs -g
Run Code Online (Sandbox Code Playgroud)

这些将获得当前系统的默认打印机.我想知道是否有办法在我的计算机上运行它以通过计算机名称获取远程计算机的默认打印机?

我试过跑:

psexec \\c78572 -i -d cscript C:\Windows\System32\Printing_Admin_Scripts\en-US\prnmngr.vbs -g
Run Code Online (Sandbox Code Playgroud)

它似乎运行..但我只在远程计算机上的快速弹出cmd行窗口中看到结果而不是我的.我所看到的就是:

cscript started with process ID 568.
Run Code Online (Sandbox Code Playgroud)

在powershell gwmi win32_printer -computername c78572工作..但我不知道如何排序它以显示默认打印机.

编辑12/20/13我试图将它与显示所有打印机和默认设置相结合,但我无法让它工作:

while (1) {
$tag1 = Read-Host 'Enter tag # or Q to quit'
if ($tag1 -eq "Q") {
    break;
}

cls

sc.exe \\$tag1 start RemoteRegistry;

cls

start-sleep -seconds 2

cls

$OSInfo = get-wmiobject -class win32_operatingsystem -computername $tag1;
$OSInfo | Format-Table -Property @{Name="OS Name";Expression={$_.Caption}},@{Name="System Boot Time";Expression={$_.ConvertToDateTime($_.LastBootUpTime)}} -AutoSize;


gwmi …
Run Code Online (Sandbox Code Playgroud)

printing powershell command-line command wsh

2
推荐指数
1
解决办法
2万
查看次数

多个命令的Unix别名参数

我正在使用bash shell,我想创建一个别名,它将对给定目录执行一些操作.假设我希望别名是"执行",我希望它能用于ls和cd.我希望"执行"采取一个参数,这是一个目录,然后它将ls,然后cd进入.

execute temp
Run Code Online (Sandbox Code Playgroud)

应相当于:

ls temp ; cd temp
Run Code Online (Sandbox Code Playgroud)

那么我如何为执行后创建一个别名来读取下一个输入,然后将其用作另外两个的参数呢?像这样的东西?

alias execute="directory=VALUE ; ls $directory ; cd $directory"
Run Code Online (Sandbox Code Playgroud)

unix variables bash alias command

2
推荐指数
1
解决办法
2138
查看次数

Android:adb pull命令无法正常工作/无法执行

我试图将我的设备上的一个完整目录(not rooted)复制到我的mac目录中,说/Users/myUserName/Documents/Copied使用android Pull命令,但每次运行命令时,它都会给我一条消息说remote object does not exist.

我用了

File file = new File(Environment.getExternalStorageDirectory()+"/PB/").getAbsolutePath();

获取我的设备中目录的绝对路径/storage/emulated/0/PB.现在我运行以下命令

./adb pull /storage/emulated/0/PB /Users/myUserName/Documents/Copied/
Run Code Online (Sandbox Code Playgroud)

我收到了以下回复

remote object '/storage/emulated/0/PB' does not exist
Run Code Online (Sandbox Code Playgroud)

我不知道我的方法有什么问题,为什么即使目录在我的设备中也不起作用.

请指导.

android command pull adb

2
推荐指数
1
解决办法
1万
查看次数