小编San*_*hoi的帖子

像perl -e一样创建和执行R脚本到shell中的脚本R如bash?

我倾向于使用perl -e选项在shell脚本(如bash)中添加Perl脚本,而不创建Perl脚本文件.

perl -e '
while (<>) {
  print; 
}' < file
Run Code Online (Sandbox Code Playgroud)

是否有类似的方式为R做这个?我想在bash脚本中编写R脚本,但不创建R脚本文件.

一种方法是使用

R --vanilla <<RSCRIPT
a <- "hello\n"
cat(a)
RSCRIPT
Run Code Online (Sandbox Code Playgroud)

与perl -e不同,当使用$时,必须在引用表的列时添加反斜杠.在perl -e中,我们不需要使用\ $来引用perl变量.

bash perl r

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

如何使用重定向和管道创建一个bash字符串命令?

我想用重定向和/或管道创建一个bash字符串命令,并使用它来显示命令字符串或执行命令字符串.没有重定向或管道的简单命令可以工作,但是带有重定向或管道的一串命令不能.例如,

command="echo 1"
$command
echo "$command"
Run Code Online (Sandbox Code Playgroud)

会显示

1
echo 1
Run Code Online (Sandbox Code Playgroud)

然而,

command="echo 1 | cat"
$command
echo "$command"
Run Code Online (Sandbox Code Playgroud)

会显示

1 | cat
echo 1 | cat
Run Code Online (Sandbox Code Playgroud)

但我想要

1
echo 1 | cat
Run Code Online (Sandbox Code Playgroud)

同样对于重定向,

command="echo 1 | cat > 1.out"
$command
echo "$command"
Run Code Online (Sandbox Code Playgroud)

会显示

1 | cat > 1.out
echo 1 | cat > 1.out
Run Code Online (Sandbox Code Playgroud)

但我想要

echo 1 | cat > 1.out
Run Code Online (Sandbox Code Playgroud)

使用名为"1.out"的新文件,其中包含内容1.

有没有办法实现我想要的?

linux bash shell pipe io-redirection

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

如何在C中的一行中设置多个位?

我会写两行来设置,比如说,有些东西.这里,例如,我想将uint16_t值x中的高8位设置为y的低8位.

uint16_t y = 0x0034;
uint16_t x = 0xFF12;
Run Code Online (Sandbox Code Playgroud)

我想要x:

assert(x == 0x3412);
Run Code Online (Sandbox Code Playgroud)

我倾向于写这两行:

x &= 0x00FF;
x |= (y << 8);
Run Code Online (Sandbox Code Playgroud)

有没有一种方法可以在不使用宏的情况下编写单行来实现相同的效果?

c bit-manipulation

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

如何在R中读取和打印文件的第一个头?

我想在R中打印一个文件的头.我知道如何使用R支持的read.table和其他输入方法.我只想知道读取文件中的unix命令cat或head的R替代方法并打印一些他们.

谢谢,

SangChul

unix r head cat

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

标签 统计

bash ×2

r ×2

bit-manipulation ×1

c ×1

cat ×1

head ×1

io-redirection ×1

linux ×1

perl ×1

pipe ×1

shell ×1

unix ×1