标签: bash

如何将进程的“打开文件”限制从 1024 增加到 10240

我有一个需要许多临时文件的进程(java 程序)。有一个限制,我们不能有超过 1024 个打开的描述符。如何将进程的“打开文件”限制从 1024 增加到 10240 我可以减少该值......而不是增加它。以下作品。

ulimit -n 899 
Run Code Online (Sandbox Code Playgroud)

以下不起作用

ulimit -n 1025
Run Code Online (Sandbox Code Playgroud)

linux bash

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

如何编写为父 shell 设置别名的 bash 脚本?

我正在尝试编写一个脚本来为我的 bash shell 设置别名,但我不想source自动输入.bashrc- 我需要在我的终端子集中使用别名。

是否可以alias在脚本中使用命令并使别名命令适用于运行脚本的 shell?

期望的功能:

$ alias
# ... no output here
$ ./my-script
$ alias
alias foo='bar'
alias alpha='beta'
...
Run Code Online (Sandbox Code Playgroud)

bash alias

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

无法从脚本中取消设置环境变量

我正在尝试从脚本中取消设置所有环境变量。该脚本运行良好,但如果我运行 env 它仍然显示所有变量集。
如果我从 CLI 运行命令,它会起作用并且变量未设置。

unset `env | awk -F= '/^\w/ {print $1}' | xargs`
Run Code Online (Sandbox Code Playgroud)

知道如何从脚本运行它吗?
另外,知道如何从脚本中获取 /etc/profile 吗?这也行不通。

我需要设置名称相同但路径不同的变量,具体取决于我的用户需要的实例。

稍后编辑:
好的,我最终得到了这个(不是很优雅,但无论如何)解决方案:

. script 
Run Code Online (Sandbox Code Playgroud)

其中包含:

unset `env | awk -F= '/^\w/ {print $1}'|egrep -v "HOSTNAME|TERM|SHELL|HISTSIZE|SSH_CLIENT|SSH_TTY|USER|LS_COLORS|KDEDIR|MAIL|PATH|INPUTRC|PWD|LANG|HISTIGNORE|SSH_ASKPASS|TEST|SHLVL|HOME|LD_ASSUME_KERNEL|LOGNAME|SSH_CONNECTION|LESSOPEN|HISTTIMEFORMAT|G_BROKEN_FILENAMES|_"|xargs`
source env_variable_file
Run Code Online (Sandbox Code Playgroud)

谢谢!

scripting bash environment-variables source

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

使用“touch”创建目录 - 递归创建目录的“影子”副本

  1. 在“A”目录中: find . -type f > a.txt
  2. 在“B”目录中: cat a.txt | while read FILENAMES; do touch "$FILENAMES"; done

结果:第 2 步“创建文件”(我的意思是仅具有相同的文件名,但大小为 0 字节)但如果“A”目录中有子目录,则第 2 步无法在子目录中创建文件,因为里面没有目录。

问题:有没有办法,“触摸”可以创建目录?

linux bash

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

有什么聪明的方法可以在 SSH 密钥中输入密码?

我的主机使用密码而不是 id_rsa 的 SSH 登录。但是不是每次都输入密码,有没有办法将密码放在我的 .ssh/config 中?

例如:

Host gravy_access
Hostname 127.0.0.1
User my_name_is_gravy
Password gravy_password
Run Code Online (Sandbox Code Playgroud)

这样当我ssh gravy_access它会立即允许访问。

ssh password bash remote

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

多么“须藤!!” 在 bash 中工作

多么“须藤!!” 在 bash 中工作:

$ touch /bin/1
touch: cannot touch `/bin/1': Permission denied
$ sudo !!
sudo touch /bin/1
Run Code Online (Sandbox Code Playgroud)

linux bash sudo

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

Bash rsync 脚本中的错误

bash 脚本具有以下行

    rsync $OPTS $BACKDIR $USER@$DEST:$DESTDIR     
Run Code Online (Sandbox Code Playgroud)

但选项之一是rsh='ssh -p2222' 它抱怨:

    rsync: -p2222': unknown option
    rsync error: syntax or usage error (code 1) at main.c(1425) [client=3.0.7]
Run Code Online (Sandbox Code Playgroud)

但是当我将脚本更改为:

    echo rsync $OPTS $BACKDIR $USER@$DEST:$DESTDIR     
Run Code Online (Sandbox Code Playgroud)

并手动运行它工作的打印命令。

请指教

bash rsync

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

在 Linux 服务器上通过 SSH、SCP 和 FTP 传输文件时出现“输入的 MAC 损坏。数据包损坏”

这方面的帮助会很好。

眼镜:

LAMP 服务器 Linux 操作系统 - Debian 5.0.1 4x Intel(R) Xeon(TM) CPU 2.80GHz

重要包裹:

  • openssl - SSL 安全性
  • iptables - 防火墙阻止所有请求,除了允许的请求
  • phpmyadmin - 让事情变得更简单
  • ntp

我们过去没有遇到过这个问题,我们不知道它发生的确切时间,也不知道发生时发生了什么变化的详细信息。但是我们确实做了更新,这个问题似乎已经开始并与更新相对应。但是,每当我尝试将大文件从服务器(即用于备份的站点根文件夹)传输到我的机器时,例如,通过 SSH 和 SCP,我都会得到以下信息:

“输入 MAC 损坏。断开连接:数据包损坏”

  • 当我使用 SCP 复制它们时会发生这种情况。首先它停顿然后给出上面的错误。
  • 如果我尝试 FTP,它会达到大约 3% 并完全停止,包括 FTP 程序。

我不知道这到底是什么问题。我觉得它要么与HMAC或HMAC2有关,要么与网卡或软件有关。有什么想法吗?

ssh bash ftp scp

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

如何定期从文件中删除所有内容而不删除它

我需要定期清空一个文本文件而不删除它(我知道它有多少行)。

我试过这个:

创建了一个执行以下脚本的 cron

other lines from the script here

sed '1,14d' file.txt>file.txt
Run Code Online (Sandbox Code Playgroud)

如果我从终端运行它,它工作正常,但是当我运行 cron 时,它会执行第一部分(“此处脚本中的其他行”部分),但它不会清空文件。

注意:该文件有 777 个权限,所以我认为它与权限无关。

scripting bash cron

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

创建随机密码

我需要从脚本动态创建密码。

不幸的是,由于创建密码需要时间,我无法使用利用 /dev/urandom 的应用程序。

是否还有其他应用程序可用于即时创建密码?

password bash

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

标签 统计

bash ×10

linux ×3

password ×2

scripting ×2

ssh ×2

alias ×1

cron ×1

environment-variables ×1

ftp ×1

remote ×1

rsync ×1

scp ×1

source ×1

sudo ×1