![지난 달에 설치된 모든 패치/패키지를 표시합니다.](https://linux55.com/image/108061/%EC%A7%80%EB%82%9C%20%EB%8B%AC%EC%97%90%20%EC%84%A4%EC%B9%98%EB%90%9C%20%EB%AA%A8%EB%93%A0%20%ED%8C%A8%EC%B9%98%2F%ED%8C%A8%ED%82%A4%EC%A7%80%EB%A5%BC%20%ED%91%9C%EC%8B%9C%ED%95%A9%EB%8B%88%EB%8B%A4..png)
rpm -qa --last
다음 형식의 출력이 포함된 명령을 사용하여 지난 달에 설치된 모든 패키지를 표시하고 싶습니다 .
libgcc-4.4.7-17.el6.x86_64 Tue 01 Nov 2016 12:55:21 PM CET
내 스크립트에는 lastmonth=$(date --date='1 month ago')
항목 표시를 시작하려는 날짜가 있습니다. grep, sed 및 awk를 사용해 보았지만 지금까지 결과가 없습니다. 이것이 내가 지금까지 얻은 것입니다:
#!/bin/sh
now = date
lastmonth=$(date --date='1 month ago')
echo $lastmonth
rpm -qa --last |awk '$1>=from&&$1<=to' from=$lastmonth to=$now
난 별로 한 게 없어sed (rpm -qa --last |sed -n '/$lastmonth/,/$now/p')
그런데 이런 오류가 발생합니다.awk: cmd. line:1: fatal: cannot open file `Feb' for reading (No such file or directory)
답변1
아래 명령은 요청한 결과를 제공합니다.
rpm -qa --last | grep -w "$(date --date='1 month ago' +'%b %Y')"
답변2
나는 당신을 위해 스크립트를 작성할 수 없습니다. 하지만 당신이 자신만의 스크립트를 만들 수 있도록 제가 도와드릴 수 있습니다. 설치가 완료되면 다음 경로에 설치 파일이 포함됩니다. 다음 명령을 사용하십시오.
cd /usr/local/bin
ll
또는
cd /usr/lib/
ll
날짜의 경우 다음 명령을 사용할 수 있습니다.
date +"%Y-%m-%d" -d "last month"
답변3
변수를 인용해야 합니다.
rpm -qa --last |awk '$1>=from&&$1<=to' from="$lastmonth" to="$now"