小编Ray*_*yne的帖子

将所有输出重定向到文件

我知道在Linux中,要将屏幕输出重定向到文件,我可以使用>tee.但是,我不确定为什么部分输出仍然输出到屏幕而不写入文件.

有没有办法将所有输出重定向到文件?

linux bash io-redirection

712
推荐指数
9
解决办法
102万
查看次数

打印文件中一行的最后一列

我有一个不断写入/更新的文件.我想找到包含特定单词的最后一行,然后打印该行的最后一列.

该文件看起来像这样.随着时间的推移,将附加更多的A1/B1/C1线.

A1 123 456
B1 234 567
C1 345 678
A1 098 766
B1 987 6545
C1 876 5434
Run Code Online (Sandbox Code Playgroud)

我试着用

tail -f file | grep A1 | awk '{print $NF}'
Run Code Online (Sandbox Code Playgroud)

打印值766,但没有输出.

有没有办法做到这一点?

awk file tail

109
推荐指数
4
解决办法
19万
查看次数

在C中打印十六进制字符

我正在尝试读取一行字符,然后打印出字符的十六进制等效值.

例如,如果我有一个字符串,"0xc0 0xc0 abc123"前两个字符是c0十六进制,其余字符是abc123ASCII,那么我应该得到

c0 c0 61 62 63 31 32 33
Run Code Online (Sandbox Code Playgroud)

但是,printf使用%x给了我

ffffffc0 ffffffc0 61 62 63 31 32 33
Run Code Online (Sandbox Code Playgroud)

如何在不使用的情况下获得我想要的输出"ffffff"?为什么只有c0(和80)有ffffff,但没有其他字符?

c printf hex

88
推荐指数
5
解决办法
31万
查看次数

在DOS脚本中打印当前日期和时间

我有一个脚本,打印日志和时间,后跟日志中的字符串.

echo %DATE%_%TIME% Processing %%f >> process.log
Run Code Online (Sandbox Code Playgroud)

问题是日期和时间始终是脚本启动的日期和时间.我一直在运行脚本,但仍然有相同的日期和时间.有没有办法更新它们,以便显示字符串打印到日志文件时的当前日期和时间?

time date dos

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

@echo off in cmd

我正在尝试编写BAT脚本,我有以下内容:

@echo off
REM Comments here
SETLOCAL ENABLEDELAYEDEXPANSION
set PROG_ROOT=C:\Prog
set ONE=1

echo 1>> %PROG_ROOT\test.txt
echo %ONE%>> %PROG_ROOT\test.txt

for /f "tokens=*" %%f in (folders.txt) do (
    echo %%f>> %PROG_ROOT\test.txt
)

ENDLOCAL
Run Code Online (Sandbox Code Playgroud)

我的folders.txt包含数字"5".

我的test.txt输出是

ECHO is off
ECHO is off
5
Run Code Online (Sandbox Code Playgroud)

我不明白为什么前两行输出有"ECHO关闭",而第三行输出正确.如何打印正确的输出?

ETA:我试过了

echo 1>> %PROG_ROOT\test.txt
echo %ONE% >> %PROG_ROOT\test.txt
Run Code Online (Sandbox Code Playgroud)

我能打印出来

ECHO is off
1
Run Code Online (Sandbox Code Playgroud)

但是,我不需要在数字后打印尾随空格.

windows cmd echo

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

捕获数据包后会发生什么?

我一直在读关于NIC捕获数据包后会发生什么,我读的越多,我就越困惑.

首先,我已经读过,传统上,在NIC捕获数据包之后,它会被复制到内核空间中的内存块,然后被复制到用户空间,以用于处理数据包数据的任何应用程序.然后我读到了DMA,其中NIC直接将数据包复制到内存中,绕过CPU.那么NIC - >内核内存 - >用户空间内存流仍然有效吗?此外,大多数NIC(例如Myricom)是否使用DMA来提高数据包捕获率?

其次,RSS(Receive Side Scaling)在Windows和Linux系统中的工作方式是否相似?我只能找到关于RSS如何在MSDN文章中工作的详细解释,他们在这里讨论RSS(和MSI-X)如何在Windows Server 2008上运行.但RSS和MSI-X的相同概念应该仍然适用于Linux系统,对吧?

谢谢.

此致,Rayne

linux rss windows-installer packet dma

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

ICC与GCC - 优化和CPU架构

我很想知道GCC在优化级别和特定处理器架构方面与英特尔的ICC有何不同.我正在使用GCC 4.1.2 20070626和ICC v11.1 for Linux.

ICC的优化级别(O1到O3)与GCC有何不同,如果它们完全不同的话?

ICC能够专门迎合不同的架构(IA-32,intel64和IA-64).我已经读过GCC有-march编译器选项,我认为它类似,但我找不到要使用的选项列表.我使用的是64位的Intel Xeon X5570.我可以使用任何其他GCC编译器选项来满足64位Intel CPU的应用程序吗?

谢谢.

此致,Rayne

compiler-construction 64-bit x86 gcc icc

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

在DOS中使用echo而不使用尾随空格

我注意到当我使用echo在DOS中将某些内容打印到文件时,会在字符串中附加一个空格.我需要打印没有尾随空格的字符串.有没有办法做到这一点,或作为一种解决方法,从文件中删除尾随空格?

space dos echo

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

cudaMemcpy无效参数

我的程序运行2个线程 - 线程A(用于输入)和B(用于处理).我还有一对指向2个缓冲区的指针,因此当线程A完成将数据复制到缓冲区1中时,线程B开始处理缓冲区1,线程A开始将数据复制到缓冲区2.然后当缓冲区2已满时,线程A复制数据进入缓冲区1和线程B处理缓冲区2,依此类推.

当我尝试将cudaMemcpy Buffer []放入d_Buffer(之前是主线程的cudaMalloc,即在创建线程之前,我的问题来了.缓冲区[]也被主线程malloc化).我得到一个"无效参数"错误,但不知道哪个是无效参数.

我已将程序简化为单线程程序,但仍使用2个缓冲区.也就是说,复制和处理一个接一个地发生,而不是同时发生.cudaMemcpy行与双线程行完全相同.单线程程序运行正常.

我不确定错误在哪里.

谢谢.

此致,Rayne

buffer cuda nvidia

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

以相反顺序迭代字典(Python)

据我所知,在迭代字典时,它将按任意顺序排列.但是,我需要确保最后访问一个特定项目,并且此项目恰好具有最小的键.我该如何实现呢?

现在,我有

files["h"] = DIRECTORY["h"][0]
files["n"] = DIRECTORY["n"][0]
files["a"] = DIRECTORY["a"][0]

for key, file_dir in files.iteritems():
    print ("Checking {0} in {1}".format(key, file_dir))
    # process files
Run Code Online (Sandbox Code Playgroud)

字典恰好以"a","h","n"的顺序迭代.我需要最后处理"a",因为它依赖于"h"和"n"中的文件.

有没有办法在不运行process files代码两次的情况下执行此操作,一次用于"h"和"n",另一种用于"a"?

python dictionary

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

标签 统计

dos ×2

echo ×2

linux ×2

64-bit ×1

awk ×1

bash ×1

buffer ×1

c ×1

cmd ×1

compiler-construction ×1

cuda ×1

date ×1

dictionary ×1

dma ×1

file ×1

gcc ×1

hex ×1

icc ×1

io-redirection ×1

nvidia ×1

packet ×1

printf ×1

python ×1

rss ×1

space ×1

tail ×1

time ×1

windows ×1

windows-installer ×1

x86 ×1