所以我想尝试做以下事情:
while read line; do
read userInput
echo "$line $userInput"
done < file.txt
Run Code Online (Sandbox Code Playgroud)
所以说file.txt有:
Hello?
Goodbye!
Run Code Online (Sandbox Code Playgroud)
运行该程序将创建:
Hello?
James
Hello? James
Goodbye!
Farewell
Goodbye! Farewell
Run Code Online (Sandbox Code Playgroud)
问题(自然地)成为用户输入读取从stdin读取,在我们的例子中是文件.txt.有没有办法改变它从临时读取到终端的位置以获取用户输入?
注意:我正在使用的文件长度为200,000行.每条线长约500个字符.因此,如果需要,请记住这一点
所以我有代码:
import glob,os
import random
path = 'C:\\Music\\'
aw=[]
for infile in glob.glob( os.path.join(path,'*.mp3') ):
libr = infile.split('Downloaded',1)
aw.append(infile)
aww = -1
while 1:
aww += 1
print len(aw),aww
random.shuffle(aw)
awww = aw[aww]
os.startfile(awww)
Run Code Online (Sandbox Code Playgroud)
但它所做的就是不停地浏览所有歌曲.我想如果我能找到当前正在播放的歌曲的长度,我可以使用"时间"模块继续歌曲完成后使用(sleep)属性.但是,我找不到如何在Windows上获取歌曲的长度.有谁知道我的问题的解决方案?
我有一个嵌入式系统,我希望在接下来的15年左右使用它,它有一个基于https的管理控制台.据我所知:
有没有办法获得长寿证书,以便浏览器不会抱怨,或者每次证书在产品有效期内到期时是否有必要发布新固件?或者为用户提供加载新证书的方法?
我有以下脚本:
FOR %%i IN (1 2 3) DO (
IF %%i==1 (
ECHO %%i
)
IF %%i==2 (
ECHO %%i
)
IF %%i==3 (
ECHO %%i
)
)
Run Code Online (Sandbox Code Playgroud)
我只想打印
1
2
3
Run Code Online (Sandbox Code Playgroud)
因为我将再次使用相同的逻辑来编写更完整的任务......我不是Windows的人,我不知道如何做到这一点batch.相反,我得到:
c:\>FOR %i IN (1 2 3) DO (
IF %i == 1 (ECHO %i )
IF %i == 2 (ECHO %i )
IF %i == 3 (ECHO %i )
)
c:\>(
IF 1 == 1 (ECHO 1 )
IF 1 == 2 (ECHO 1 ) …Run Code Online (Sandbox Code Playgroud) 我正在尝试获取一个脚本来查询IIS网站上的文件,然后自动下载这些文件.到目前为止,我有这个:
$webclient = New-Object System.Net.webclient
$source = "http://testsite:8005/"
$destination = "C:\users\administrator\desktop\testfolder\"
#The following line returns the links in the webpage
$testcode1 = $webclient.downloadstring($source) -split "<a\s+" | %{ [void]($_ -match "^href=['"]([^'">\s]*)"); $matches[1] }
foreach ($line in $test2) {
$webclient.downloadfile($source + $line, $destination + $line)
}
Run Code Online (Sandbox Code Playgroud)
我还不擅长PowerShell,而且我遇到了一些错误,但我设法得到一些测试文件,我扔进了我的wwwroot文件夹(web.config文件似乎无法下载,所以我想这就是我的一个错误).当我试图将我的$source值更改为我的网站上有一些测试文本文件的子文件夹时(例如= http://testsite:8005/subfolder/,我得到错误,根本没有下载.运行我$testcode1将在我的子文件夹中给我以下链接:
/subfolder/test2/txt
/
/subfolder/test1.txt
/subfolder/test2.txt
我不知道为什么它列出了test2文件两次.我认为我的问题是,因为它返回了子文件夹/文件格式,因为我试图下载$source + $line,我本来就是错误http://testsite:8005/subfolder/subfolder/test1.txt,但实际上是当我尝试通过添加来补救时一个$root值是我的网站的根目录并执行foreach($line in $testcode1) { $webclient.downloadfile($root + $line, $destination + $line) },我仍然得到错误.
如果你们中的一些高速大师可以帮助向我展示我的方式的错误,我将不胜感激.我希望下载我网站上每个子文件夹中的所有文件,我知道这将涉及一些递归操作,但同样,我目前还没有自己的技能水平.提前谢谢你帮助我!
目前在OSX 10.7上安装了Lion openssl 0.9.8r.此版本从2011年2月开始,我想将其更新到最新版本.我不能使用autoupdate,因为我需要enable-cms选项,所以我从源代码构建它,运行./Configure darwin64-x86_64-cc和./config enable-cms --openssldir=~/usr/local/ssl.然后我做了"make"和"make install"没有任何错误,但仍然安装了旧版本.
> openssl version
OpenSSL 0.9.8r 8 Feb 2011
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?也许是文件夹?我只是猜到ssl文件夹/usr/local/必须是Mac OSX的默认打开ssl安装目录?
当使用timed_wait在boost::condition_variable具有持续时间,将等待状态超时即使用户(或NTP)更改系统时间的持续时间后?
例如,
boost::posix_time::time_duration wait_duration(0, 0, 1, 0); // 1 sec
// ** System time jumps back 15 minutes here. **
if( !signal.timed_wait(lock, wait_duration) )
{
// Does this condition happen 1 second later, or about 15 minutes later?
}
Run Code Online (Sandbox Code Playgroud) 嗨有没有办法让特定服务运行窗口的CPU利用率.我希望wmic cpu得到LoadPercentage会为整个系统提供cpu util但是有可能获得像winword.exe这样的特定服务
所以,我制作了一个批处理脚本,它执行多个可移植程序(例如,prog1.exe,prog2.exe等).问题是每当我将USB驱动器连接到另一台计算机时,驱动器号都会改变,在运行我的.bat文件时会出现错误.请帮我找一个解决方案.谢谢.
我是UNIX的新手,今天只在工作中开始工作,但对Java有经验,并且有以下代码:
#/bin/bash
echo "Please enter a word:"
read word
grep -i $word $1 | cut -d',' -f1,2 | tr "," "-"> output
Run Code Online (Sandbox Code Playgroud)
这工作正常,但我现在需要做的是检查何时读取单词,它只包含字母,如果它有打印数字字符"无效输入!" 消息并要求他们再次输入.我假设使用if语句的正则表达式是这样做的简单方法,但是我无法理解如何在UNIX中使用它们,因为我已经习惯了它们的Java应用程序.任何有关这方面的帮助将非常感激,因为我在搜索时找不到帮助,因为在linux中使用正则表达式的所有解决方案我发现它只是处理它是否全部是数字.