标签: bash

Linux通过命令行控制正在运行的vlc进程

有没有办法在ubuntu上控制已经运行的VLC播放器.例如,我正在尝试使用默认音频启动vlc视频全屏.

然后通过netcat或其他命令远程控制卷和其他功能.可能吗?

bash ubuntu vlc

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

MAC:如何合并文件夹,以便我们只在源文件比目标文件更新时覆盖?

这似乎是非常基本的命令.然而,即使经过一个小时的搜索解决方案,我仍然找不到有用的东西.

所以我有两个大文件夹(包含许多文件和许多子文件夹,大型备份).我想将这两个文件夹合并到一个只包含较新文件的文件夹中.所以我正在寻找一种覆盖文件的方法,如果只有源文件比目标文件更新,或者当目标文件不存在时.

我正在运行Mac版本10.7.4.我愿意安装新的应用程序和/或使用terminal/bash命令.

macos bash file overwrite batch-processing

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

bash shell脚本中的数字大于255

如何返回大于255的数字

function returnnumber(){
    x=256
    return $x
}

returnnumber
echo "value: $?"
Run Code Online (Sandbox Code Playgroud)

我想输入256和256返回

但256返回0.

bash shell

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

使用netstat结合ps查找进程ID

我想使用netstat找到进程ID,并查看使用ps运行此进程的时间.我目前有两个单独的命令来执行此操作.如何使用一个命令执行此操作?

netstat -anp | grep http | grep ESTABLISHED | awk {'print $7}' | awk -F '/' {'print $1'}
Run Code Online (Sandbox Code Playgroud)

和:

ps -eo pid,uid,ruser,etime | grep someuser
Run Code Online (Sandbox Code Playgroud)

linux bash

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

Bash - echo`basename $ HOME`和echo $(basename $ HOME)之间的差异

非常感谢您提前帮助.

标题说明了一切:使用之间的区别是什么:

echo `basename $HOME` 
Run Code Online (Sandbox Code Playgroud)

echo $(basename $HOME)
Run Code Online (Sandbox Code Playgroud)

请注意,我知道basename命令的作用,两种语法都有效,并且两个命令都提供相同的输出.

我只是想知道两者之间是否存在任何差异,如果可能,为什么有两种语法.

干杯

拉斐尔

bash

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

bashrc if:表达式语法错误

我写了以下.bashrc:

# .bashrc
# Source global definitions
if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi

# User specific aliases and functions


function up( )
{
LIMIT=$1
P=$PWD
for ((i=1; i <= LIMIT; i++))
do
    P=$P/..
done
cd $P
export MPWD=$P
}

function back( )
{
LIMIT=$1
P=$MPWD
for ((i=1; i <= LIMIT; i++))
do
    P=${P%/..}
done
cd $P
export MPWD=$P
}
Run Code Online (Sandbox Code Playgroud)

但是,保存后,当我这样做时source .bashrc,我收到以下错误: if: Expression Syntax.

我究竟做错了什么 ?我用谷歌搜索了一段时间但没有用.

unix bash

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

在特定目录中设置环境变量

这是一个.bashrc问题.我想"export FOO=bar"在特定的目录中设置.bashrc .rvmrc.

我在下面试过.

$ touch ~/foo/.bashrc
$ echo 'export RAILS_ENV=development' >> ~/foo/.bashrc
$ cd foo/
$ env|grep RAILS_ENV
Run Code Online (Sandbox Code Playgroud)

RAILS_ENV在这种情况下不得设置任何东西.

如果我设置.rvmrc而不是.bashrc,它会通过!但这是更好的设置方式,.bashrc因为我不需要安装rvm环境.

有解决方案吗

linux variables bash

5
推荐指数
3
解决办法
2040
查看次数

在bash脚本中使用find - 如何处理find返回"文件或目录不存在"的情况

我正在使用我的bash脚本中的find命令

for x in `find ${1} .....`;
do
    ...
done
Run Code Online (Sandbox Code Playgroud)

但是,如何处理我的脚本输入是不存在的文件/目录的情况?(即我想在发生这种情况时打印出一条消息)

我试过使用-d和-f,但我遇到问题的情况是$ {1}是"." 要么 ".."

当输入不存在时,它不会进入我的for循环.

谢谢!

bash find

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

可以在不使用echo或全局变量的情况下从Bash函数返回字符串吗?

我在工作中回到了很多Bash脚本,我生锈了.

有没有办法从函数返回本地值字符串而不使其全局或使用echo?我希望函数能够通过屏幕与用户交互,但也可以将返回值传递给变量而不需要像export return_value="return string".printf命令似乎完全像echo一样响应.

例如:

function myfunc() {
    [somecommand] "This appears only on the screen"
    echo "Return string"
}

# return_value=$(myfunc)
This appears only on the screen

# echo $return_value
Return string
Run Code Online (Sandbox Code Playgroud)

bash interactive return function echo

5
推荐指数
3
解决办法
3557
查看次数

awk/gsub - 在每行多次出现的双引号之间打印所有内容

我试图在双引号(sampleField="sampleValue")之间打印所有数据,但是很难获得awk和/或sub/ gsub返回双引号之间的所有数据实例.然后,我想在所找到的相应行上打印所有实例以将数据保持在一起.

以下是该input.txt文件的示例:

deviceId="1300", deviceName="router 13", deviceLocation="Corp"
deviceId="2000", deviceName="router 20", deviceLocation="DC1"
Run Code Online (Sandbox Code Playgroud)

我正在寻找的输出是:

"1300", "router 13", "Corp"
"2000", "router 20", "DC1"
Run Code Online (Sandbox Code Playgroud)

我在使用gsub删除a ,和之间的所有数据时遇到问题=.每次我尝试不同的方法时,它总是只返回第一个字段并移动到下一行.

更新:

我忘了提到我不知道每行有多少双引号封装字段.它可以是1,3或5,000.不确定这是否会影响解决方案,但希望确保它在那里.

bash awk sed

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

标签 统计

bash ×10

linux ×2

awk ×1

batch-processing ×1

echo ×1

file ×1

find ×1

function ×1

interactive ×1

macos ×1

overwrite ×1

return ×1

sed ×1

shell ×1

ubuntu ×1

unix ×1

variables ×1

vlc ×1