이 bash 명령은 htops 새로 고침 간격을 늘리기 위해 만들어진 것 같은데 어디서 찾았는지 기억이 나지 않습니다. 그러나 나중에 새로 고침을 더 빠르게 하기 위해 해야 할 일은 nano를 사용하여 /.config/htop/htoprc를 편집하는 것 뿐이라는 것을 알게 되었는데, 이는 훌륭하게 작동했습니다. 그러나 bash: alias notfound 오류가 계속 발생합니다. 이러한 오류와 스크립트를 터미널에서 무시하도록 하는 것이 아니라 완전히 제거하려면 어떻게 해야 합니까? 터미널에서 이 에코를 중지하는 방법을 모르겠습니다. 내 스크린샷에서 볼 수 있듯이 불행하게도 새 터미널 창과 재부팅 후에도 이 작업이 계속 수행됩니다! 문제가 있는지 확인하기 위해 모든 debsums 스위치를 실행했고 sysctl.conf(procps 패키지에서)를 제외하고 모두 정상적으로 돌아왔습니다. 비록 두 가지 다른 문제이지만 procps 패키지는 내 방화벽 규칙에서 나온 것 같지만 잘 모르겠어... 내 ufw 규칙은
Status: active
To Action From
-- ------ ----
22/tcp LIMIT Anywhere
443 ALLOW Anywhere
80/tcp DENY Anywhere
22/tcp (v6) LIMIT Anywhere (v6)
443 (v6) ALLOW Anywhere (v6)
80/tcp (v6) DENY Anywhere (v6)
내 터미널의 스크린샷이 포함되어 있습니다.
배쉬 오류입니다
bash: alias: -d: not found
bash: alias: 5: not found
bash: alias: -d: not found
bash: alias: 1: not found
bash: alias: -d: not found
bash: alias: 0.2: not found
bash: alias: -d: not found
bash: alias: 0.1: not found
bob@bob-ao533:~$
이것들은 모두 그들 중 하나에 의해 발생합니다.
sudo echo "alias top="top -d 1"" >> ~/.bashrc
sudo echo "alias top="top -d 5"" >> ~/.bashrc
그런 다음 debsums 문제의 경우 를 실행한 후에 발견되었지만 sudo debsums -as
-cs -ls 및 표준 -s -as를 포함하여 debsum에 대한 다른 주요 스위치는 sysctl.conf(procps 패키지에서)를 찾은 스위치였습니다.
답변1
문자열 참조 문제가 있습니다.
큰따옴표 쌍의 시작과 끝 사이에는 차이가 없으므로 큰따옴표 안에 큰따옴표를 넣을 수 없습니다. 따라서 bash
명령은 다음과 같습니다(따옴표는 로 시작 <<<
하고 로 끝남 >>>
).
echo <<<alias top=>>>top -d 5<<<>>>
이는 다음 내용이 .bashrc에 기록된다는 의미입니다.
alias top=top -d 5
이는 원하는 것이 아니므로 -d: not found
오류가 발생하는 것입니다.
대신 다음과 같이 큰따옴표 안에 작은따옴표를 사용하세요.
echo "alias top='top -d 5'"
도움이 되었기를 바랍니다
echo
편집: 다른 사람들이 여기서 지적했듯이 .bashrc 파일에 줄을 추가하기 위해 sudo를 실행할 이유가 없습니다 .
또한 리디렉션은 명령이 실행되기 전에 실행 중인 셸의 권한을 사용하여 발생하므로 실제로 높은 권한으로 파일을 쓰지 않습니다. 실제로 상승된 권한으로 작성하려면 다음을 수행해야 합니다.
echo "your line" | sudo tee -a your_file
또는 다음과 같이 관리자 권한 셸에서 전체 코드 줄을 실행합니다.
sudo bash -c "echo 'your line' > your_file"