小编Alo*_*dal的帖子

在“for”循环中使用“tee”进行管道传输

这可能是新手逃避问题。我正在尝试在这样的 for 循环中运行命令

$ for SET in `ls ../../mybook/WS/wsc_production/`; do ~/sandbox/scripts/ftype-switch/typesort.pl /media/mybook/WS/wsc_production/$SET ./wsc_sorter/$SET | tee -a sorter.log; done;
Run Code Online (Sandbox Code Playgroud)

但我最终还是sorter.log空虚了。(我确定有一些输出。)如果我转义管道符号 ( \|),我最终会得到任何输出sorter.log

我究竟做错了什么?

$ bash --version
GNU bash, version 4.1.5(1)-release (i486-pc-linux-gnu)
Run Code Online (Sandbox Code Playgroud)

编辑:哎呀,/media/mybook/ 睡着了,所以实际上没有输出。该代码首先是正确的。不过还是谢谢大家的评论。

bash loops for-loop pipe tee

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

连接超过SocketServer.TCPServer吗?

如何使TCP服务器正确关闭套接字?

我编写了一个简单的TCP服务器,将某些信息回显给客户端。现在,我想在localhost:8088上使用它,并在使用killall代码时随时停止使用并重新启动它。

但是,我无法使其关闭所有套接字并“释放”地址,因此,当我快速进行一些测试时,修复代码中的某些内容,然后停止(Ctrl + C)并再次启动服务器,我得到了socket.error: [Errno 98] Address already in use

当我时sudo netstat -ntap,我仍然可以看到几个127.0.0.1:8088处于TIME_WAIT状态的套接字。所以我必须等到他们“消亡”。

我的测试用例:

#!/usr/bin/python
import SocketServer

class MyEchoHandler(SocketServer.BaseRequestHandler):

    def handle(self):
        self.data = self.request.recv(1024).strip()
        # do something smart with the data, but for now, just say hello.
        self.reply = "Content-Type: text/plain\r\n\r\nhello."
        self.request.send(self.reply)
        self.request.close()

def main():
    server = SocketServer.TCPServer((HOST, PORT), MyEchoHandler)
    server.serve_forever()

if __name__ == '__main__':
    HOST, PORT = "localhost", 8088
    main()
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?还self.request.close()不够吗?

我正在使用Python 2.7.3在Debian上进行尝试,尽管我也需要在Python 2.6中支持Squeeze。

python unix networking

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

使用正则表达式从数组中删除唯一的术语

假设我有一个数组

@arr = qw( 12 2 5 bba<1s54> 10 11 )
Run Code Online (Sandbox Code Playgroud)

在这种情况下,"bba<1s54>"如何从此数组中删除非数字项?

这个独特的"术语"有格式"bba<...>".是否可以使用正则表达式删除它?

regex perl

0
推荐指数
1
解决办法
103
查看次数

内联python中没有反击?

当我试图将计数器放入Python的内联循环时,它会告诉我语法错误.显然,在这里希望我的值赋给i没有k.

任何人都可以帮助重写内联循环吗?

aa = [2, 2, 1]
k = 0

b = [k += 1 if i != 2  for i in aa ] 

print(b)
Run Code Online (Sandbox Code Playgroud)

python loops inline

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

标签 统计

loops ×2

python ×2

bash ×1

for-loop ×1

inline ×1

networking ×1

perl ×1

pipe ×1

regex ×1

tee ×1

unix ×1