* [PATCH 1/2] egrep, fgrep: deprecated
@ 2022-09-14 9:06 Murphy Zhou
2022-09-14 9:06 ` [PATCH 2/2] common/quota: fix grep pattern Murphy Zhou
` (2 more replies)
0 siblings, 3 replies; 9+ messages in thread
From: Murphy Zhou @ 2022-09-14 9:06 UTC (permalink / raw)
To: fstests
Since this grep commit:
commit a9515624709865d480e3142fd959bccd1c9372d1
Author: Paul Eggert <eggert@cs.ucla.edu>
Date: Sun Aug 15 10:52:13 2021 -0700
egrep, fgrep: now obsolete
egrep will trigger a warning like:
+egrep: warning: egrep is obsolescent; using grep -E
This will break many gold output.
Signed-off-by: Murphy Zhou <jencce.kernel@gmail.com>
---
check | 2 +-
common/btrfs | 4 ++--
common/dmlogwrites | 2 +-
common/dump | 4 ++--
common/encrypt | 4 ++--
common/filter | 2 +-
common/fuzzy | 6 +++---
common/populate | 2 +-
common/quota | 8 ++++----
common/rc | 36 ++++++++++++++++++------------------
common/repair | 2 +-
common/xfs | 12 ++++++------
tests/btrfs/011 | 2 +-
tests/btrfs/100 | 2 +-
tests/btrfs/101 | 2 +-
tests/btrfs/187 | 2 +-
tests/btrfs/252 | 2 +-
tests/ext4/006 | 2 +-
tests/generic/164 | 2 +-
tests/generic/165 | 2 +-
tests/generic/454 | 2 +-
tests/generic/670 | 2 +-
tests/xfs/008 | 2 +-
tests/xfs/012 | 2 +-
tests/xfs/033 | 2 +-
tests/xfs/064 | 4 ++--
tests/xfs/065 | 2 +-
tests/xfs/083 | 2 +-
tests/xfs/122 | 4 ++--
tests/xfs/138 | 2 +-
tests/xfs/185 | 2 +-
tests/xfs/186 | 4 ++--
tests/xfs/293 | 2 +-
tests/xfs/330 | 2 +-
tests/xfs/422 | 2 +-
tests/xfs/499 | 2 +-
tests/xfs/505 | 2 +-
tests/xfs/514 | 2 +-
tests/xfs/515 | 2 +-
tests/xfs/517 | 2 +-
tests/xfs/520 | 2 +-
tests/xfs/530 | 2 +-
tests/xfs/539 | 2 +-
43 files changed, 76 insertions(+), 76 deletions(-)
diff --git a/check b/check
index 0b2f10ed..1a43c116 100755
--- a/check
+++ b/check
@@ -389,7 +389,7 @@ if $have_test_arg; then
test_name=`basename $t`
group_file=$SRC_DIR/$test_dir/group.list
- if egrep -q "^$test_name" $group_file; then
+ if grep -Eq "^$test_name" $group_file; then
# in group file ... OK
echo $SRC_DIR/$test_dir/$test_name \
>>$tmp.arglist
diff --git a/common/btrfs b/common/btrfs
index bd2639bf..d27d3384 100644
--- a/common/btrfs
+++ b/common/btrfs
@@ -9,7 +9,7 @@ _btrfs_get_subvolid()
mnt=$1
name=$2
- $BTRFS_UTIL_PROG sub list $mnt | egrep "\s$name$" | $AWK_PROG '{ print $2 }'
+ $BTRFS_UTIL_PROG sub list $mnt | grep -E "\s$name$" | $AWK_PROG '{ print $2 }'
}
# _require_btrfs_command <command> [<subcommand>|<option>]
@@ -183,7 +183,7 @@ _check_btrfs_filesystem()
_require_btrfs_dev_del_by_devid()
{
- $BTRFS_UTIL_PROG device delete --help | egrep devid > /dev/null 2>&1
+ $BTRFS_UTIL_PROG device delete --help | grep -E devid > /dev/null 2>&1
[ $? -eq 0 ] || _notrun "$BTRFS_UTIL_PROG too old "\
"(must support 'btrfs device delete <devid> /<mnt>')"
}
diff --git a/common/dmlogwrites b/common/dmlogwrites
index 66c57e2b..9fa1c977 100644
--- a/common/dmlogwrites
+++ b/common/dmlogwrites
@@ -51,7 +51,7 @@ _require_log_writes_dax_mountopt()
# Check options to be sure.
# XFS ignores dax option(or changes it to dax=never)
# and goes on if dev underneath does not support dax.
- _fs_options $LOGWRITES_DMDEV | egrep -q "dax(=always|,|$)"
+ _fs_options $LOGWRITES_DMDEV | grep -Eq "dax(=always|,|$)"
ret=$?
_log_writes_cleanup
if [ $ret -ne 0 ]; then
diff --git a/common/dump b/common/dump
index 0dcc9655..8e0446d9 100644
--- a/common/dump
+++ b/common/dump
@@ -128,7 +128,7 @@ _check_onl()
fi
- if egrep -i 'onl|ready' $tmp.status | grep -iv 'not ready' >/dev/null; then
+ if grep -Ei 'onl|ready' $tmp.status | grep -iv 'not ready' >/dev/null; then
:
else
echo "ERROR: $dumptape is not online"
@@ -145,7 +145,7 @@ _wait_tape()
i=0
while [ $i -lt 20 ]; do
echo "Checking status..." >>$seqres.full
- if _mt status 2>&1 | tee -a $seqres.full | egrep -i "onl|ready" >/dev/null; then
+ if _mt status 2>&1 | tee -a $seqres.full | grep -Ei "onl|ready" >/dev/null; then
break;
else
sleep 1
diff --git a/common/encrypt b/common/encrypt
index 8f3c46f6..5e3c6c4b 100644
--- a/common/encrypt
+++ b/common/encrypt
@@ -49,7 +49,7 @@ _require_scratch_encryption()
# some older kernels and is ext4-specific anyway.)
mkdir $SCRATCH_MNT/tmpdir
if _set_encpolicy $SCRATCH_MNT/tmpdir 2>&1 >>$seqres.full | \
- egrep -q 'Inappropriate ioctl for device|Operation not supported'
+ grep -Eq 'Inappropriate ioctl for device|Operation not supported'
then
_notrun "kernel does not support $FSTYP encryption"
fi
@@ -125,7 +125,7 @@ _require_encryption_policy_support()
local keyspec=$(_generate_session_encryption_key)
fi
if _set_encpolicy $dir $keyspec $set_encpolicy_args \
- 2>&1 >>$seqres.full | egrep -q 'Invalid argument'; then
+ 2>&1 >>$seqres.full | grep -Eq 'Invalid argument'; then
_notrun "kernel does not support encryption policy: '$set_encpolicy_args'"
fi
# fscrypt allows setting policies with modes it knows about, even
diff --git a/common/filter b/common/filter
index 28dea646..6433a30e 100644
--- a/common/filter
+++ b/common/filter
@@ -347,7 +347,7 @@ _filter_size_to_bytes()
# verbose output
_filter_fstrim()
{
- egrep -o "[0-9]+ bytes" | $AWK_PROG '{print $1}'
+ grep -Eo "[0-9]+ bytes" | $AWK_PROG '{print $1}'
}
# Remove the ending dot appended to mount error message, util-linux 2.30
diff --git a/common/fuzzy b/common/fuzzy
index 809dee54..b4fda6f5 100644
--- a/common/fuzzy
+++ b/common/fuzzy
@@ -91,11 +91,11 @@ __filter_xfs_db_print_fields() {
else
echo "${fuzzkey}"
fi
- done | egrep "${filter}"
+ done | grep -E "${filter}"
}
# Navigate to some part of the filesystem and print the field info.
-# The first argument is an egrep filter for the fields
+# The first argument is an grep filter for the fields
# The rest of the arguments are xfs_db commands to locate the metadata.
_scratch_xfs_list_metadata_fields() {
filter="$1"
@@ -289,7 +289,7 @@ _scratch_xfs_list_fuzz_verbs() {
}
# Fuzz some of the fields of some piece of metadata
-# The first argument is an egrep filter for the field names
+# The first argument is an grep filter for the field names
# The second argument is the repair mode (online, offline, both)
# The rest of the arguments are xfs_db commands to locate the metadata.
#
diff --git a/common/populate b/common/populate
index 867776cd..9739ac99 100644
--- a/common/populate
+++ b/common/populate
@@ -132,7 +132,7 @@ _populate_xfs_qmount_option()
# Inject our quota mount options
if echo "${MOUNT_OPTIONS}" | grep -q "${quota}"; then
return
- elif echo "${MOUNT_OPTIONS}" | egrep -q '(quota|noenforce)'; then
+ elif echo "${MOUNT_OPTIONS}" | grep -Eq '(quota|noenforce)'; then
_qmount_option "${quota}"
else
export MOUNT_OPTIONS="$MOUNT_OPTIONS -o ${quota}"
diff --git a/common/quota b/common/quota
index 3a758e0f..22be3c69 100644
--- a/common/quota
+++ b/common/quota
@@ -141,7 +141,7 @@ _require_nobody()
_cat_passwd | grep -q '^nobody'
[ $? -ne 0 ] && _notrun "password file does not contain user nobody."
- _cat_group | egrep -q '^no(body|group)'
+ _cat_group | grep -Eq '^no(body|group)'
[ $? -ne 0 ] && _notrun "group file does not contain nobody/nogroup."
}
@@ -192,7 +192,7 @@ _choose_uid()
_choose_gid()
{
- _cat_group | egrep '^no(body|group)' | perl -ne '@a = split(/:/); END { printf "id=%d name=%s\n", $a[2],$a[0] }'
+ _cat_group | grep -E '^no(body|group)' | perl -ne '@a = split(/:/); END { printf "id=%d name=%s\n", $a[2],$a[0] }'
}
_choose_prid()
@@ -323,12 +323,12 @@ _check_quota_usage()
# Report the block usage of root, $qa_user, and nobody
_report_quota_blocks() {
- repquota $1 | egrep "^($qa_user|root|nobody)" | awk '{print $1, $3, $4, $5}' | sort -r
+ repquota $1 | grep -E "^($qa_user|root|nobody)" | awk '{print $1, $3, $4, $5}' | sort -r
}
# Report the inode usage of root, $qa_user, and nobody
_report_quota_inodes() {
- repquota $1 | egrep "^($qa_user|root|nobody)" | awk '{print $1, $6, $7, $8}' | sort -r
+ repquota $1 | grep -E "^($qa_user|root|nobody)" | awk '{print $1, $6, $7, $8}' | sort -r
}
# Determine which type of quota we're using
diff --git a/common/rc b/common/rc
index 197c9415..da2e7279 100644
--- a/common/rc
+++ b/common/rc
@@ -113,7 +113,7 @@ _get_hugepagesize()
{
local hugepgsz=$(awk '/Hugepagesize/ {print $2}' /proc/meminfo)
# Call _notrun if $hugepgsz is not a number
- echo "$hugepgsz" | egrep -q ^[0-9]+$ || \
+ echo "$hugepgsz" | grep -E -q ^[0-9]+$ || \
_notrun "Cannot get the value of Hugepagesize"
echo $((hugepgsz * 1024))
}
@@ -1080,7 +1080,7 @@ _scratch_mkfs_sized()
case $FSTYP in
xfs)
# don't override MKFS_OPTIONS that set a block size.
- echo $MKFS_OPTIONS |egrep -q "b?size="
+ echo $MKFS_OPTIONS |grep -E -q "b?size="
if [ $? -eq 0 ]; then
_scratch_mkfs_xfs -d size=$fssize $rt_ops
else
@@ -1165,13 +1165,13 @@ _scratch_mkfs_geom()
case $FSTYP in
xfs)
- if echo "$MKFS_OPTIONS" | egrep -q "b?size="; then
+ if echo "$MKFS_OPTIONS" | grep -E -q "b?size="; then
MKFS_OPTIONS=$(echo "$MKFS_OPTIONS" | sed -r "s/(b?size=)[0-9]+k?/\1$blocksize/")
else
MKFS_OPTIONS+=" -b size=$blocksize"
fi
- if echo "$MKFS_OPTIONS" | egrep -q "(su|sunit|sw|swidth)="; then
+ if echo "$MKFS_OPTIONS" | grep -E -q "(su|sunit|sw|swidth)="; then
MKFS_OPTIONS=$(echo "$MKFS_OPTIONS" | sed -r \
-e "s/(su|sunit)=[0-9kmg]+/su=$sunit_bytes/" \
-e "s/(sw|swidth)=[0-9kmg]+/sw=$swidth_mult/")
@@ -1673,7 +1673,7 @@ _require_scratch_nocheck()
{
case "$FSTYP" in
glusterfs)
- echo $SCRATCH_DEV | egrep -q ":/?" > /dev/null 2>&1
+ echo $SCRATCH_DEV | grep -E -q ":/?" > /dev/null 2>&1
if [ -z "$SCRATCH_DEV" -o "$?" != "0" ]; then
_notrun "this test requires a valid \$SCRATCH_DEV"
fi
@@ -1873,7 +1873,7 @@ _require_test()
{
case "$FSTYP" in
glusterfs)
- echo $TEST_DEV | egrep -q ":/?" > /dev/null 2>&1
+ echo $TEST_DEV | grep -E -q ":/?" > /dev/null 2>&1
if [ -z "$TEST_DEV" -o "$?" != "0" ]; then
_notrun "this test requires a valid \$TEST_DEV"
fi
@@ -2140,7 +2140,7 @@ __scratch_uses_fsdax()
{
local ops=$(_normalize_mount_options "$MOUNT_OPTIONS")
- echo $ops | egrep -qw "dax(=always| |$)" && return 0
+ echo $ops | grep -E -qw "dax(=always| |$)" && return 0
return 1
}
@@ -2601,7 +2601,7 @@ _require_xfs_io_command()
# Test xfs_io chattr support AND
# filesystem FS_IOC_FSSETXATTR support
# 'tPnE' flags are only valid for a directory so check them on a directory.
- if echo "$param" | egrep -q 't|P|n|E'; then
+ if echo "$param" | grep -E -q 't|P|n|E'; then
testio=`$XFS_IO_PROG -F -c "chattr +$param" $testdir 2>&1`
attr_info=`$XFS_IO_PROG -F -r -c "lsattr" $testdir | awk '{print $1}'`
$XFS_IO_PROG -F -r -c "chattr -$param" $testdir 2>&1
@@ -2659,7 +2659,7 @@ _require_xfs_io_command()
"-T")
# Check O_TMPFILE support in xfs_io, kernel and fs
testio=`$XFS_IO_PROG -T -c quit $TEST_DIR 2>&1`
- echo $testio | egrep -q "invalid option|Is a directory" && \
+ echo $testio | grep -E -q "invalid option|Is a directory" && \
_notrun "xfs_io $command support is missing"
echo $testio | grep -q "Operation not supported" && \
_notrun "O_TMPFILE is not supported"
@@ -3217,7 +3217,7 @@ _check_generic_filesystem()
# Filter the knowen errors the UDF Verifier reports.
_udf_test_known_error_filter()
{
- egrep -v "PVD 60 Error: Interchange Level: 1, Maximum Interchange Level: 0|FSD 28 Error: Interchange Level: 1, Maximum Interchange Level: 1,|PVD 72 Warning: Volume Set Identifier: \"\*IRIX UDF\",|Warning: [0-9]+ unused blocks NOT marked as unallocated."
+ grep -E -v "PVD 60 Error: Interchange Level: 1, Maximum Interchange Level: 0|FSD 28 Error: Interchange Level: 1, Maximum Interchange Level: 1,|PVD 72 Warning: Volume Set Identifier: \"\*IRIX UDF\",|Warning: [0-9]+ unused blocks NOT marked as unallocated."
}
@@ -3249,9 +3249,9 @@ _check_udf_filesystem()
rm -f $seqres.checkfs
sleep 1 # Due to a problem with time stamps in udf_test
- $here/src/udf_test $opt_arg $device | tee $seqres.checkfs | egrep "Error|Warning" | \
+ $here/src/udf_test $opt_arg $device | tee $seqres.checkfs | grep -E "Error|Warning" | \
_udf_test_known_error_filter | \
- egrep -iv "Error count:.*[0-9]+.*total occurrences:.*[0-9]+|Warning count:.*[0-9]+.*total occurrences:.*[0-9]+" && \
+ grep -E -iv "Error count:.*[0-9]+.*total occurrences:.*[0-9]+|Warning count:.*[0-9]+.*total occurrences:.*[0-9]+" && \
echo "Warning UDF Verifier reported errors see $seqres.checkfs." && return 1
return 0
}
@@ -3782,7 +3782,7 @@ _check_scratch_dax_mountopt()
_try_scratch_mount "-o $option" > /dev/null 2>&1 || return 1
- if _fs_options $SCRATCH_DEV | egrep -q "dax(=always|,|$)"; then
+ if _fs_options $SCRATCH_DEV | grep -E -q "dax(=always|,|$)"; then
_scratch_unmount
return 0
else
@@ -4048,9 +4048,9 @@ _exclude_mount_option()
shift
while [ $# -gt 0 ]; do
local pattern=$1
- echo "$pattern" | egrep -q "dax(=always|$)" && \
+ echo "$pattern" | grep -E -q "dax(=always|$)" && \
pattern="dax(=always| |$)"
- if echo $mnt_opts | egrep -q "$pattern"; then
+ if echo $mnt_opts | grep -E -q "$pattern"; then
_notrun "mount option \"$1\" not allowed in this test"
fi
shift
@@ -4329,7 +4329,7 @@ _dmesg_since_test_start()
# _dmesg_since_test_start.
_check_dmesg_for()
{
- _dmesg_since_test_start | egrep -q "$1"
+ _dmesg_since_test_start | grep -E -q "$1"
}
# Default filter for dmesg scanning.
@@ -4338,7 +4338,7 @@ _check_dmesg_for()
# lockdep.
_check_dmesg_filter()
{
- egrep -v -e "BUG: MAX_LOCKDEP_CHAIN_HLOCKS too low" \
+ grep -E -v -e "BUG: MAX_LOCKDEP_CHAIN_HLOCKS too low" \
-e "BUG: MAX_STACK_TRACE_ENTRIES too low"
}
@@ -4356,7 +4356,7 @@ _check_dmesg()
local filter=${1:-_check_dmesg_filter}
_dmesg_since_test_start | $filter >$seqres.dmesg
- egrep -q -e "kernel BUG at" \
+ grep -E -q -e "kernel BUG at" \
-e "WARNING:" \
-e "\bBUG:" \
-e "Oops:" \
diff --git a/common/repair b/common/repair
index 463ef9db..8945d002 100644
--- a/common/repair
+++ b/common/repair
@@ -105,7 +105,7 @@ _filter_repair_lostblocks() {
_filter_dd()
{
- fgrep -v records # lose records in/out lines
+ grep -F -v records # lose records in/out lines
}
# do some controlled corrupting & ensure repair recovers us
diff --git a/common/xfs b/common/xfs
index 9f84dffb..4c6374ed 100644
--- a/common/xfs
+++ b/common/xfs
@@ -103,7 +103,7 @@ _scratch_find_xfs_min_logblocks()
# try again without MKFS_OPTIONS because that's what _scratch_do_mkfs
# will do if we pass in the log size option.
if [ $mkfs_status -ne 0 ] &&
- ! egrep -q '(log size.*too small, minimum|external log device.*too small, must be)' $tmp.mkfserr; then
+ ! grep -E -q '(log size.*too small, minimum|external log device.*too small, must be)' $tmp.mkfserr; then
eval "$mkfs_cmd $extra_mkfs_options $SCRATCH_DEV" \
2>$tmp.mkfserr 1>$tmp.mkfsstd
mkfs_status=$?
@@ -181,7 +181,7 @@ _xfs_get_file_block_size()
{
local path="$1"
- if ! ($XFS_IO_PROG -c "stat -v" "$path" 2>&1 | egrep -q '(rt-inherit|realtime)'); then
+ if ! ($XFS_IO_PROG -c "stat -v" "$path" 2>&1 | grep -E -q '(rt-inherit|realtime)'); then
_get_block_size "$path"
return
fi
@@ -966,8 +966,8 @@ _scratch_xfs_set_metadata_field()
done
local wr_cmd="write"
- _scratch_xfs_db -x -c "help write" | egrep -q "(-c|-d)" && value="-- ${value}"
- _scratch_xfs_db -x -c "help write" | egrep -q "(-d)" && wr_cmd="${wr_cmd} -d"
+ _scratch_xfs_db -x -c "help write" | grep -E -q "(-c|-d)" && value="-- ${value}"
+ _scratch_xfs_db -x -c "help write" | grep -E -q "(-d)" && wr_cmd="${wr_cmd} -d"
_scratch_xfs_db -x "${cmds[@]}" -c "${wr_cmd} ${key} ${value}"
}
@@ -1107,8 +1107,8 @@ _force_xfsv4_mount_options()
local pquota=0
# Can't have group and project quotas in XFS v4
- echo "$MOUNT_OPTIONS" | egrep -q "(gquota|grpquota|grpjquota=|gqnoenforce)" && gquota=1
- echo "$MOUNT_OPTIONS" | egrep -q "(\bpquota|prjquota|pqnoenforce)" && pquota=1
+ echo "$MOUNT_OPTIONS" | grep -E -q "(gquota|grpquota|grpjquota=|gqnoenforce)" && gquota=1
+ echo "$MOUNT_OPTIONS" | grep -E -q "(\bpquota|prjquota|pqnoenforce)" && pquota=1
if [ $gquota -gt 0 ] && [ $pquota -gt 0 ]; then
export MOUNT_OPTIONS=$(echo $MOUNT_OPTIONS \
diff --git a/tests/btrfs/011 b/tests/btrfs/011
index 0665e126..6c3d037f 100755
--- a/tests/btrfs/011
+++ b/tests/btrfs/011
@@ -133,7 +133,7 @@ workout()
_run_btrfs_util_prog filesystem show -m $SCRATCH_MNT
# Skip -r test for configs without mirror OR replace cancel
- if echo $mkfs_options | egrep -qv "raid1|raid5|raid6|raid10" || \
+ if echo $mkfs_options | grep -E -qv "raid1|raid5|raid6|raid10" || \
[ "${with_cancel}Q" = "cancelQ" ]; then
_scratch_unmount > /dev/null 2>&1
_scratch_dev_pool_put
diff --git a/tests/btrfs/100 b/tests/btrfs/100
index 9986a06e..410e83ba 100755
--- a/tests/btrfs/100
+++ b/tests/btrfs/100
@@ -37,7 +37,7 @@ _run_btrfs_util_prog filesystem show -m $SCRATCH_MNT
$BTRFS_UTIL_PROG filesystem show -m $SCRATCH_MNT | _filter_btrfs_filesystem_show
error_devid=`$BTRFS_UTIL_PROG filesystem show -m $SCRATCH_MNT |\
- egrep $DMERROR_DEV | $AWK_PROG '{print $2}'`
+ grep -E $DMERROR_DEV | $AWK_PROG '{print $2}'`
snapshot_cmd="$BTRFS_UTIL_PROG subvolume snapshot -r $SCRATCH_MNT"
snapshot_cmd="$snapshot_cmd $SCRATCH_MNT/snap_\`date +'%H_%M_%S_%N'\`"
diff --git a/tests/btrfs/101 b/tests/btrfs/101
index f0436f9f..e8ed8c5c 100755
--- a/tests/btrfs/101
+++ b/tests/btrfs/101
@@ -38,7 +38,7 @@ _run_btrfs_util_prog filesystem show -m $SCRATCH_MNT
$BTRFS_UTIL_PROG filesystem show -m $SCRATCH_MNT | _filter_btrfs_filesystem_show
error_devid=`$BTRFS_UTIL_PROG filesystem show -m $SCRATCH_MNT |\
- egrep $DMERROR_DEV | $AWK_PROG '{print $2}'`
+ grep -E $DMERROR_DEV | $AWK_PROG '{print $2}'`
snapshot_cmd="$BTRFS_UTIL_PROG subvolume snapshot -r $SCRATCH_MNT"
snapshot_cmd="$snapshot_cmd $SCRATCH_MNT/snap_\`date +'%H_%M_%S_%N'\`"
diff --git a/tests/btrfs/187 b/tests/btrfs/187
index 574636a6..d3cf05a1 100755
--- a/tests/btrfs/187
+++ b/tests/btrfs/187
@@ -219,7 +219,7 @@ wait $balance_pid
# BTRFS error (device sdc): parent transid verify failed on 32243712 wanted 24 \
# found 27
#
-_dmesg_since_test_start | egrep -e '\bBTRFS error \(device .*?\):'
+_dmesg_since_test_start | grep -E -e '\bBTRFS error \(device .*?\):'
status=0
exit
diff --git a/tests/btrfs/252 b/tests/btrfs/252
index 65ebe571..8b4809b7 100755
--- a/tests/btrfs/252
+++ b/tests/btrfs/252
@@ -180,7 +180,7 @@ for i in "${!snapshots[@]}"; do
# case, so we don't have a mismatch with the golden output in case we
# run with a non default $LOAD_FACTOR (default is 1). We only want the
# mismatch with the golden output in case there's a checksum failure.
- $FSSUM_PROG -r "$snap_csum" "$snap_copy" | egrep -v '^OK$'
+ $FSSUM_PROG -r "$snap_csum" "$snap_copy" | grep -E -v '^OK$'
done
echo "Silence is golden"
diff --git a/tests/ext4/006 b/tests/ext4/006
index 48ed6bee..8792167b 100755
--- a/tests/ext4/006
+++ b/tests/ext4/006
@@ -130,7 +130,7 @@ cat "$ROUND2_LOG" >> $seqres.full
echo "++ check fs (2)" >> $seqres.full
_check_scratch_fs >> $seqres.full 2>&1
-egrep -q '(did not fix|makes no progress)' $seqres.full && echo "e2fsck failed" | tee -a $seqres.full
+grep -E -q '(did not fix|makes no progress)' $seqres.full && echo "e2fsck failed" | tee -a $seqres.full
if [ "$(wc -l < "$ROUND2_LOG")" -ne 8 ]; then
echo "e2fsck did not fix everything" | tee -a $seqres.full
fi
diff --git a/tests/generic/164 b/tests/generic/164
index 56c05e37..8ab71c72 100755
--- a/tests/generic/164
+++ b/tests/generic/164
@@ -50,7 +50,7 @@ _cp_reflink $testdir/file1 $testdir/file3
_scratch_cycle_mount
fbytes() {
- egrep -v '(61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61|62 62 62 62 62 62 62 62 62 62 62 62 62 62 62 62)'
+ grep -E -v '(61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61|62 62 62 62 62 62 62 62 62 62 62 62 62 62 62 62)'
}
reader() {
diff --git a/tests/generic/165 b/tests/generic/165
index bc24bcab..6deb6623 100755
--- a/tests/generic/165
+++ b/tests/generic/165
@@ -51,7 +51,7 @@ _cp_reflink $testdir/file1 $testdir/file3
_scratch_cycle_mount
fbytes() {
- egrep -v '(61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61|62 62 62 62 62 62 62 62 62 62 62 62 62 62 62 62)'
+ grep -E -v '(61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61|62 62 62 62 62 62 62 62 62 62 62 62 62 62 62 62)'
}
reader() {
diff --git a/tests/generic/454 b/tests/generic/454
index 133e2e9d..3c9b39d0 100755
--- a/tests/generic/454
+++ b/tests/generic/454
@@ -168,7 +168,7 @@ testf "combmark_\xe1\x80\x9c\xe1\x80\xad\xe1\x80\xaf.txt" "combining marks"
testf "combmark_\xe1\x80\x9c\xe1\x80\xaf\xe1\x80\xad.txt" "combining marks"
echo "Uniqueness of keys?"
-crazy_keys="$(_getfattr --absolute-names -d "${testfile}" | egrep -c '(french_|chinese_|greek_|arabic_|urk)')"
+crazy_keys="$(_getfattr --absolute-names -d "${testfile}" | grep -E -c '(french_|chinese_|greek_|arabic_|urk)')"
expected_keys=11
test "${crazy_keys}" -ne "${expected_keys}" && echo "Expected ${expected_keys} keys, saw ${crazy_keys}."
diff --git a/tests/generic/670 b/tests/generic/670
index 4a895d90..67de1674 100755
--- a/tests/generic/670
+++ b/tests/generic/670
@@ -43,7 +43,7 @@ fbytes() {
# Different with generic/164,165, mread copies data from mmapped area
# one-byte-at-a-time, which may cause races during reflink_range().
# So the result of _mread_range() may be a mix of 61 and 62.
- egrep -v '((61|62) ){15}(61|62)'
+ grep -E -v '((61|62) ){15}(61|62)'
}
reader() {
diff --git a/tests/xfs/008 b/tests/xfs/008
index a53f6c92..e7d6153b 100755
--- a/tests/xfs/008
+++ b/tests/xfs/008
@@ -46,7 +46,7 @@ _do_test()
echo "holes is in range"
else
# quick check - how many holes did we get?
- count=`xfs_bmap $out | egrep -c ': hole'`
+ count=`xfs_bmap $out | grep -E -c ': hole'`
# blocks can end up adjacent, therefore number of holes varies
_within_tolerance "holes" $count $_holes 10% -v
fi
diff --git a/tests/xfs/012 b/tests/xfs/012
index 5ebc9058..e0dccc4e 100755
--- a/tests/xfs/012
+++ b/tests/xfs/012
@@ -50,7 +50,7 @@ _do_test()
if [ $failed -eq 0 ]
then
# quick check - how many holes did we get?
- count=`xfs_bmap $out | egrep -c ': hole'`
+ count=`xfs_bmap $out | grep -E -c ': hole'`
echo " $count hole(s) detected"
# and how big was the file?
_filesize $out
diff --git a/tests/xfs/033 b/tests/xfs/033
index d47da0d6..ef5dc4fa 100755
--- a/tests/xfs/033
+++ b/tests/xfs/033
@@ -45,7 +45,7 @@ _check_root_inos()
#
_filter_bad_ids()
{
- egrep -v 'bad user id 0xffffffff|bad group id 0xffffffff'
+ grep -E -v 'bad user id 0xffffffff|bad group id 0xffffffff'
}
# real QA test starts here
diff --git a/tests/xfs/064 b/tests/xfs/064
index a81b226b..f67c29fd 100755
--- a/tests/xfs/064
+++ b/tests/xfs/064
@@ -31,7 +31,7 @@ _ls_size_filter()
# Filter out the housekeeping files of xfsrestore
#
$AWK_PROG 'NF == 9 { print $5, $9 }' |\
- egrep -v 'dumpdir|housekeeping|dirattr|dirextattr|namreg|state|tree'
+ grep -E -v 'dumpdir|housekeeping|dirattr|dirextattr|namreg|state|tree'
}
# real QA test starts here
@@ -48,7 +48,7 @@ while [ $i -le 9 ]; do
if [ $i -gt 0 ]; then
sleep 2
_modify_level $i
- fi
+ fi
_stable_fs
sleep 2
diff --git a/tests/xfs/065 b/tests/xfs/065
index 8485dee6..819d385e 100755
--- a/tests/xfs/065
+++ b/tests/xfs/065
@@ -37,7 +37,7 @@ _list_dir()
find $__dir -exec $here/src/lstat64 -t {} \; |\
sed -e 's/.*dumpdir/dumpdir/' -e '/^dumpdir /d' |\
sed -e 's/.*restoredir/restoredir/' -e '/^restoredir /d' |\
- egrep -v 'housekeeping|dirattr|dirextattr|namreg|state|tree' |\
+ grep -E -v 'housekeeping|dirattr|dirextattr|namreg|state|tree' |\
awk '$3 ~ /^d/ { $2 = "XXX" } {print}' |\
LC_COLLATE=POSIX sort
}
diff --git a/tests/xfs/083 b/tests/xfs/083
index a9acc9f5..edab3b7b 100755
--- a/tests/xfs/083
+++ b/tests/xfs/083
@@ -145,7 +145,7 @@ cat "$ROUND2_LOG" >> $seqres.full
echo "++ check fs (2)" >> $seqres.full
_repair_scratch_fs >> $seqres.full 2>&1
-egrep -q '(did not fix|makes no progress)' $seqres.full && echo "xfs_repair failed" | tee -a $seqres.full
+grep -E -q '(did not fix|makes no progress)' $seqres.full && echo "xfs_repair failed" | tee -a $seqres.full
if [ "$(wc -l < "$ROUND2_LOG")" -ne 8 ]; then
echo "xfs_repair did not fix everything" | tee -a $seqres.full
fi
diff --git a/tests/xfs/122 b/tests/xfs/122
index 18748e67..91083d60 100755
--- a/tests/xfs/122
+++ b/tests/xfs/122
@@ -182,8 +182,8 @@ echo 'int main(int argc, char *argv[]) {' >>$cprog
#
cat /usr/include/xfs/xfs*.h | indent |\
_attribute_filter |\
-egrep '(} *xfs_.*_t|^struct xfs_[a-z0-9_]*$)' |\
-egrep -v -f $tmp.ignore |\
+grep -E '(} *xfs_.*_t|^struct xfs_[a-z0-9_]*$)' |\
+grep -E -v -f $tmp.ignore |\
sed -e 's/^.*}[[:space:]]*//g' -e 's/;.*$//g' -e 's/_t, /_t\n/g' |\
sort | uniq |\
awk '{printf("printf(\"sizeof(%s) = %%zu\\n\", sizeof(%s));\n", $0, $0);}' |\
diff --git a/tests/xfs/138 b/tests/xfs/138
index 966ac03a..c49d2d9e 100755
--- a/tests/xfs/138
+++ b/tests/xfs/138
@@ -33,7 +33,7 @@ echo "Test with interactive"
(echo "sb 0"; sleep 0.5;
echo "p magicnum"; sleep 0.5;
echo "source $tmp.a"; sleep 0.5;
- echo "p magicnum"; sleep 0.5) | _scratch_xfs_db 2>&1 | sed -e 's/xfs_db> //g' -e 's/0x58465342/XFS_MAGIC/g' | egrep '(This is file|magicnum =)'
+ echo "p magicnum"; sleep 0.5) | _scratch_xfs_db 2>&1 | sed -e 's/xfs_db> //g' -e 's/0x58465342/XFS_MAGIC/g' | grep -E '(This is file|magicnum =)'
# success, all done
status=0
diff --git a/tests/xfs/185 b/tests/xfs/185
index f0e87642..73b21092 100755
--- a/tests/xfs/185
+++ b/tests/xfs/185
@@ -108,7 +108,7 @@ expected_end="$(( (alloc_rtx * rtextsize - 1) / 512 ))"
# file_offset file_end physical_offset physical_end
rtfile_exts() {
$XFS_IO_PROG -c 'bmap -elp' $rtfile | \
- egrep -v '(^/|EXT:|hole)' | \
+ grep -E -v '(^/|EXT:|hole)' | \
tr ':.[]' ' ' | \
while read junk foff fend physoff physend junk; do
echo "$foff $fend $physoff $physend"
diff --git a/tests/xfs/186 b/tests/xfs/186
index b54fcf26..f44158e3 100755
--- a/tests/xfs/186
+++ b/tests/xfs/186
@@ -55,8 +55,8 @@ _filter_inode()
{
tee -a $seqres.full | \
sed -e "s/core.forkoff/forkoff/g" | \
- egrep '^u.sfdir2|^u.sfdir3|^a.sfattr|forkoff' | \
- egrep -v 'inumber|parent' | \
+ grep -E '^u.sfdir2|^u.sfdir3|^a.sfattr|forkoff' | \
+ grep -E -v 'inumber|parent' | \
sed -e s/sfdir3/sfdir2/g | \
grep -v filetype
}
diff --git a/tests/xfs/293 b/tests/xfs/293
index 20f8c486..7a17eb81 100755
--- a/tests/xfs/293
+++ b/tests/xfs/293
@@ -33,7 +33,7 @@ esac
_require_command "$(type -P $CAT)" $CAT
for COMMAND in `$XFS_IO_PROG -c help | awk '{print $1}' | grep -v "^Use"`; do
- $CAT "$MANPAGE" | egrep -q "^\.B.*$COMMAND" || \
+ $CAT "$MANPAGE" | grep -E -q "^\.B.*$COMMAND" || \
echo "$COMMAND not documented in the xfs_io manpage"
done
diff --git a/tests/xfs/330 b/tests/xfs/330
index 40be4c46..5a82a1fd 100755
--- a/tests/xfs/330
+++ b/tests/xfs/330
@@ -26,7 +26,7 @@ _require_nobody
do_repquota()
{
- repquota $SCRATCH_MNT | egrep '^(fsgqa|root|nobody)' | sort -r
+ repquota $SCRATCH_MNT | grep -E '^(fsgqa|root|nobody)' | sort -r
}
rm -f "$seqres.full"
diff --git a/tests/xfs/422 b/tests/xfs/422
index fdbb8bf1..f3c63e8d 100755
--- a/tests/xfs/422
+++ b/tests/xfs/422
@@ -73,7 +73,7 @@ cpus=$(( $($here/src/feature -o) * 4 * LOAD_FACTOR))
echo "Concurrent repair"
filter_output() {
- egrep -v '(Device or resource busy|Invalid argument)'
+ grep -E -v '(Device or resource busy|Invalid argument)'
}
freeze_loop() {
end="$1"
diff --git a/tests/xfs/499 b/tests/xfs/499
index b5597708..9672f95d 100755
--- a/tests/xfs/499
+++ b/tests/xfs/499
@@ -44,7 +44,7 @@ struct ftrace_chk {
char *str;
} syms[] = {
ENDL
-egrep '(__print_flags|__print_symbolic)' $ftrace_dir*/*/format | \
+grep -E '(__print_flags|__print_symbolic)' $ftrace_dir*/*/format | \
sed -f $sedprog | grep '^{' | sort | uniq >> $cprog
cat >> $cprog << ENDL
};
diff --git a/tests/xfs/505 b/tests/xfs/505
index 71fb6e9d..0601b1a8 100755
--- a/tests/xfs/505
+++ b/tests/xfs/505
@@ -29,7 +29,7 @@ esac
_require_command "$(type -P $CAT)" $CAT
for COMMAND in `$XFS_SPACEMAN_PROG -c help $TEST_DIR | awk '{print $1}' | grep -v "^Use"`; do
- $CAT "$MANPAGE" | egrep -q "^\.B.*$COMMAND" || \
+ $CAT "$MANPAGE" | grep -E -q "^\.B.*$COMMAND" || \
echo "$COMMAND not documented in the xfs_spaceman manpage"
done
diff --git a/tests/xfs/514 b/tests/xfs/514
index cf5588f2..94f98398 100755
--- a/tests/xfs/514
+++ b/tests/xfs/514
@@ -41,7 +41,7 @@ truncate -s 128m $file
$MKFS_XFS_PROG $file >> /dev/null
for COMMAND in `$XFS_DB_PROG -x -c help $file | awk '{print $1}' | grep -v "^Use"`; do
- $CAT "$MANPAGE" | egrep -q "^\.B.*$COMMAND" || \
+ $CAT "$MANPAGE" | grep -E -q "^\.B.*$COMMAND" || \
echo "$COMMAND not documented in the xfs_db manpage"
done
diff --git a/tests/xfs/515 b/tests/xfs/515
index 2d7bbb35..adb2bd6f 100755
--- a/tests/xfs/515
+++ b/tests/xfs/515
@@ -37,7 +37,7 @@ esac
_require_command "$(type -P $CAT)" $CAT
for COMMAND in `$XFS_QUOTA_PROG -x -c help $file | awk '{print $1}' | grep -v "^Use"`; do
- $CAT "$MANPAGE" | egrep -q "^\.B.*$COMMAND" || \
+ $CAT "$MANPAGE" | grep -E -q "^\.B.*$COMMAND" || \
echo "$COMMAND not documented in the xfs_quota manpage"
done
diff --git a/tests/xfs/517 b/tests/xfs/517
index 6877af13..99fc89b0 100755
--- a/tests/xfs/517
+++ b/tests/xfs/517
@@ -70,7 +70,7 @@ cpus=$(( $(src/feature -o) * 4 * LOAD_FACTOR))
echo "Concurrent fsmap and freeze"
filter_output() {
- egrep -v '(Device or resource busy|Invalid argument)'
+ grep -E -v '(Device or resource busy|Invalid argument)'
}
freeze_loop() {
end="$1"
diff --git a/tests/xfs/520 b/tests/xfs/520
index 2fceb07c..dd6d845e 100755
--- a/tests/xfs/520
+++ b/tests/xfs/520
@@ -52,7 +52,7 @@ force_crafted_metadata() {
fi
_dmesg_since_test_start | tac | sed -ne "0,\#${kmsg}#p" | tac | \
- egrep -q 'Metadata corruption detected at' && hasmsg=1
+ grep -E -q 'Metadata corruption detected at' && hasmsg=1
_scratch_unmount > /dev/null 2>&1
[ $mounted -eq 0 -o $hasmsg -eq 1 ] || \
diff --git a/tests/xfs/530 b/tests/xfs/530
index 9c6f44d7..c960738d 100755
--- a/tests/xfs/530
+++ b/tests/xfs/530
@@ -73,7 +73,7 @@ _try_scratch_mount || _notrun "Couldn't mount fs with synthetic rt volume"
formatted_blksz="$(_get_block_size $SCRATCH_MNT)"
test "$formatted_blksz" -ne "$dbsize" && \
_notrun "Tried to format with $dbsize blocksize, got $formatted_blksz."
-$XFS_INFO_PROG $SCRATCH_MNT | egrep -q 'realtime.*blocks=0' && \
+$XFS_INFO_PROG $SCRATCH_MNT | grep -E -q 'realtime.*blocks=0' && \
_notrun "Filesystem should have a realtime volume"
echo "Consume free space"
diff --git a/tests/xfs/539 b/tests/xfs/539
index 77b44c89..778dce85 100755
--- a/tests/xfs/539
+++ b/tests/xfs/539
@@ -36,7 +36,7 @@ dmesg_since_test_tag()
check_dmesg_for_since_tag()
{
- dmesg_since_test_tag | egrep -q "$1"
+ dmesg_since_test_tag | grep -E -q "$1"
}
echo "Silence is golden."
--
2.31.1
^ permalink raw reply related [flat|nested] 9+ messages in thread* [PATCH 2/2] common/quota: fix grep pattern 2022-09-14 9:06 [PATCH 1/2] egrep, fgrep: deprecated Murphy Zhou @ 2022-09-14 9:06 ` Murphy Zhou 2022-09-14 15:24 ` Zorro Lang 2022-09-14 15:15 ` [PATCH 1/2] egrep, fgrep: deprecated Zorro Lang 2022-09-15 8:10 ` Zorro Lang 2 siblings, 1 reply; 9+ messages in thread From: Murphy Zhou @ 2022-09-14 9:06 UTC (permalink / raw) To: fstests The second dash is not needed now. Newer grep is complaining: +grep: warning: stray \ before - Signed-off-by: Murphy Zhou <jencce.kernel@gmail.com> --- common/quota | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common/quota b/common/quota index 22be3c69..01ff7e6d 100644 --- a/common/quota +++ b/common/quota @@ -218,7 +218,7 @@ _qmount() quotacheck -ug $SCRATCH_MNT >>$seqres.full 2>&1 quotaon -ug $SCRATCH_MNT >>$seqres.full 2>&1 # try to turn on project quota if it's supported - if quotaon --help 2>&1 | grep -q '\-\-project'; then + if quotaon --help 2>&1 | grep -q '\--project'; then quotaon --project $SCRATCH_MNT >>$seqres.full 2>&1 fi fi -- 2.31.1 ^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [PATCH 2/2] common/quota: fix grep pattern 2022-09-14 9:06 ` [PATCH 2/2] common/quota: fix grep pattern Murphy Zhou @ 2022-09-14 15:24 ` Zorro Lang 2022-09-15 5:28 ` Murphy Zhou 0 siblings, 1 reply; 9+ messages in thread From: Zorro Lang @ 2022-09-14 15:24 UTC (permalink / raw) To: Murphy Zhou; +Cc: fstests On Wed, Sep 14, 2022 at 05:06:10PM +0800, Murphy Zhou wrote: > The second dash is not needed now. Newer grep is complaining: > +grep: warning: stray \ before - > > Signed-off-by: Murphy Zhou <jencce.kernel@gmail.com> > --- > common/quota | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/common/quota b/common/quota > index 22be3c69..01ff7e6d 100644 > --- a/common/quota > +++ b/common/quota > @@ -218,7 +218,7 @@ _qmount() > quotacheck -ug $SCRATCH_MNT >>$seqres.full 2>&1 > quotaon -ug $SCRATCH_MNT >>$seqres.full 2>&1 > # try to turn on project quota if it's supported > - if quotaon --help 2>&1 | grep -q '\-\-project'; then > + if quotaon --help 2>&1 | grep -q '\--project'; then Yeah, I can reproduce the problem [1] you said. But I'm wondering if using "--" [2] might be better to be compatible with old and new grep ? Thanks, Zorro [1] # quotaon --help 2>&1|grep '\--project' -P, --project operate on project quotas # quotaon --help 2>&1|grep '\-\-project' grep: warning: stray \ before - -P, --project operate on project quotas [2] quotaon --help 2>&1 | "grep -q -- '--project' > quotaon --project $SCRATCH_MNT >>$seqres.full 2>&1 > fi > fi > -- > 2.31.1 > ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 2/2] common/quota: fix grep pattern 2022-09-14 15:24 ` Zorro Lang @ 2022-09-15 5:28 ` Murphy Zhou 0 siblings, 0 replies; 9+ messages in thread From: Murphy Zhou @ 2022-09-15 5:28 UTC (permalink / raw) To: Zorro Lang; +Cc: fstests On Wed, Sep 14, 2022 at 11:24 PM Zorro Lang <zlang@redhat.com> wrote: > > On Wed, Sep 14, 2022 at 05:06:10PM +0800, Murphy Zhou wrote: > > The second dash is not needed now. Newer grep is complaining: > > +grep: warning: stray \ before - > > > > Signed-off-by: Murphy Zhou <jencce.kernel@gmail.com> > > --- > > common/quota | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/common/quota b/common/quota > > index 22be3c69..01ff7e6d 100644 > > --- a/common/quota > > +++ b/common/quota > > @@ -218,7 +218,7 @@ _qmount() > > quotacheck -ug $SCRATCH_MNT >>$seqres.full 2>&1 > > quotaon -ug $SCRATCH_MNT >>$seqres.full 2>&1 > > # try to turn on project quota if it's supported > > - if quotaon --help 2>&1 | grep -q '\-\-project'; then > > + if quotaon --help 2>&1 | grep -q '\--project'; then > > Yeah, I can reproduce the problem [1] you said. But I'm wondering if using > "--" [2] might be better to be compatible with old and new grep ? Agree! Thanks! > > Thanks, > Zorro > > [1] > # quotaon --help 2>&1|grep '\--project' > -P, --project operate on project quotas > # quotaon --help 2>&1|grep '\-\-project' > grep: warning: stray \ before - > -P, --project operate on project quotas > > [2] > quotaon --help 2>&1 | "grep -q -- '--project' > > > quotaon --project $SCRATCH_MNT >>$seqres.full 2>&1 > > fi > > fi > > -- > > 2.31.1 > > > ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 1/2] egrep, fgrep: deprecated 2022-09-14 9:06 [PATCH 1/2] egrep, fgrep: deprecated Murphy Zhou 2022-09-14 9:06 ` [PATCH 2/2] common/quota: fix grep pattern Murphy Zhou @ 2022-09-14 15:15 ` Zorro Lang 2022-09-15 5:27 ` Murphy Zhou 2022-09-15 8:10 ` Zorro Lang 2 siblings, 1 reply; 9+ messages in thread From: Zorro Lang @ 2022-09-14 15:15 UTC (permalink / raw) To: Murphy Zhou; +Cc: fstests On Wed, Sep 14, 2022 at 05:06:09PM +0800, Murphy Zhou wrote: > Since this grep commit: > commit a9515624709865d480e3142fd959bccd1c9372d1 > Author: Paul Eggert <eggert@cs.ucla.edu> > Date: Sun Aug 15 10:52:13 2021 -0700 > > egrep, fgrep: now obsolete > > egrep will trigger a warning like: > +egrep: warning: egrep is obsolescent; using grep -E > > This will break many gold output. > > Signed-off-by: Murphy Zhou <jencce.kernel@gmail.com> > --- I've sent a patch for this issue, and it's been reviewed: https://lore.kernel.org/fstests/20220913125258.exj4iszolctiuxv2@zlang-mailbox/T/#t Welcome more review points, if you still find more problems after merging it. Thanks, Zorro > check | 2 +- > common/btrfs | 4 ++-- > common/dmlogwrites | 2 +- > common/dump | 4 ++-- > common/encrypt | 4 ++-- > common/filter | 2 +- > common/fuzzy | 6 +++--- > common/populate | 2 +- > common/quota | 8 ++++---- > common/rc | 36 ++++++++++++++++++------------------ > common/repair | 2 +- > common/xfs | 12 ++++++------ > tests/btrfs/011 | 2 +- > tests/btrfs/100 | 2 +- > tests/btrfs/101 | 2 +- > tests/btrfs/187 | 2 +- > tests/btrfs/252 | 2 +- > tests/ext4/006 | 2 +- > tests/generic/164 | 2 +- > tests/generic/165 | 2 +- > tests/generic/454 | 2 +- > tests/generic/670 | 2 +- > tests/xfs/008 | 2 +- > tests/xfs/012 | 2 +- > tests/xfs/033 | 2 +- > tests/xfs/064 | 4 ++-- > tests/xfs/065 | 2 +- > tests/xfs/083 | 2 +- > tests/xfs/122 | 4 ++-- > tests/xfs/138 | 2 +- > tests/xfs/185 | 2 +- > tests/xfs/186 | 4 ++-- > tests/xfs/293 | 2 +- > tests/xfs/330 | 2 +- > tests/xfs/422 | 2 +- > tests/xfs/499 | 2 +- > tests/xfs/505 | 2 +- > tests/xfs/514 | 2 +- > tests/xfs/515 | 2 +- > tests/xfs/517 | 2 +- > tests/xfs/520 | 2 +- > tests/xfs/530 | 2 +- > tests/xfs/539 | 2 +- > 43 files changed, 76 insertions(+), 76 deletions(-) > > diff --git a/check b/check > index 0b2f10ed..1a43c116 100755 > --- a/check > +++ b/check > @@ -389,7 +389,7 @@ if $have_test_arg; then > test_name=`basename $t` > group_file=$SRC_DIR/$test_dir/group.list > > - if egrep -q "^$test_name" $group_file; then > + if grep -Eq "^$test_name" $group_file; then > # in group file ... OK > echo $SRC_DIR/$test_dir/$test_name \ > >>$tmp.arglist > diff --git a/common/btrfs b/common/btrfs > index bd2639bf..d27d3384 100644 > --- a/common/btrfs > +++ b/common/btrfs > @@ -9,7 +9,7 @@ _btrfs_get_subvolid() > mnt=$1 > name=$2 > > - $BTRFS_UTIL_PROG sub list $mnt | egrep "\s$name$" | $AWK_PROG '{ print $2 }' > + $BTRFS_UTIL_PROG sub list $mnt | grep -E "\s$name$" | $AWK_PROG '{ print $2 }' > } > > # _require_btrfs_command <command> [<subcommand>|<option>] > @@ -183,7 +183,7 @@ _check_btrfs_filesystem() > > _require_btrfs_dev_del_by_devid() > { > - $BTRFS_UTIL_PROG device delete --help | egrep devid > /dev/null 2>&1 > + $BTRFS_UTIL_PROG device delete --help | grep -E devid > /dev/null 2>&1 > [ $? -eq 0 ] || _notrun "$BTRFS_UTIL_PROG too old "\ > "(must support 'btrfs device delete <devid> /<mnt>')" > } > diff --git a/common/dmlogwrites b/common/dmlogwrites > index 66c57e2b..9fa1c977 100644 > --- a/common/dmlogwrites > +++ b/common/dmlogwrites > @@ -51,7 +51,7 @@ _require_log_writes_dax_mountopt() > # Check options to be sure. > # XFS ignores dax option(or changes it to dax=never) > # and goes on if dev underneath does not support dax. > - _fs_options $LOGWRITES_DMDEV | egrep -q "dax(=always|,|$)" > + _fs_options $LOGWRITES_DMDEV | grep -Eq "dax(=always|,|$)" > ret=$? > _log_writes_cleanup > if [ $ret -ne 0 ]; then > diff --git a/common/dump b/common/dump > index 0dcc9655..8e0446d9 100644 > --- a/common/dump > +++ b/common/dump > @@ -128,7 +128,7 @@ _check_onl() > fi > > > - if egrep -i 'onl|ready' $tmp.status | grep -iv 'not ready' >/dev/null; then > + if grep -Ei 'onl|ready' $tmp.status | grep -iv 'not ready' >/dev/null; then > : > else > echo "ERROR: $dumptape is not online" > @@ -145,7 +145,7 @@ _wait_tape() > i=0 > while [ $i -lt 20 ]; do > echo "Checking status..." >>$seqres.full > - if _mt status 2>&1 | tee -a $seqres.full | egrep -i "onl|ready" >/dev/null; then > + if _mt status 2>&1 | tee -a $seqres.full | grep -Ei "onl|ready" >/dev/null; then > break; > else > sleep 1 > diff --git a/common/encrypt b/common/encrypt > index 8f3c46f6..5e3c6c4b 100644 > --- a/common/encrypt > +++ b/common/encrypt > @@ -49,7 +49,7 @@ _require_scratch_encryption() > # some older kernels and is ext4-specific anyway.) > mkdir $SCRATCH_MNT/tmpdir > if _set_encpolicy $SCRATCH_MNT/tmpdir 2>&1 >>$seqres.full | \ > - egrep -q 'Inappropriate ioctl for device|Operation not supported' > + grep -Eq 'Inappropriate ioctl for device|Operation not supported' > then > _notrun "kernel does not support $FSTYP encryption" > fi > @@ -125,7 +125,7 @@ _require_encryption_policy_support() > local keyspec=$(_generate_session_encryption_key) > fi > if _set_encpolicy $dir $keyspec $set_encpolicy_args \ > - 2>&1 >>$seqres.full | egrep -q 'Invalid argument'; then > + 2>&1 >>$seqres.full | grep -Eq 'Invalid argument'; then > _notrun "kernel does not support encryption policy: '$set_encpolicy_args'" > fi > # fscrypt allows setting policies with modes it knows about, even > diff --git a/common/filter b/common/filter > index 28dea646..6433a30e 100644 > --- a/common/filter > +++ b/common/filter > @@ -347,7 +347,7 @@ _filter_size_to_bytes() > # verbose output > _filter_fstrim() > { > - egrep -o "[0-9]+ bytes" | $AWK_PROG '{print $1}' > + grep -Eo "[0-9]+ bytes" | $AWK_PROG '{print $1}' > } > > # Remove the ending dot appended to mount error message, util-linux 2.30 > diff --git a/common/fuzzy b/common/fuzzy > index 809dee54..b4fda6f5 100644 > --- a/common/fuzzy > +++ b/common/fuzzy > @@ -91,11 +91,11 @@ __filter_xfs_db_print_fields() { > else > echo "${fuzzkey}" > fi > - done | egrep "${filter}" > + done | grep -E "${filter}" > } > > # Navigate to some part of the filesystem and print the field info. > -# The first argument is an egrep filter for the fields > +# The first argument is an grep filter for the fields > # The rest of the arguments are xfs_db commands to locate the metadata. > _scratch_xfs_list_metadata_fields() { > filter="$1" > @@ -289,7 +289,7 @@ _scratch_xfs_list_fuzz_verbs() { > } > > # Fuzz some of the fields of some piece of metadata > -# The first argument is an egrep filter for the field names > +# The first argument is an grep filter for the field names > # The second argument is the repair mode (online, offline, both) > # The rest of the arguments are xfs_db commands to locate the metadata. > # > diff --git a/common/populate b/common/populate > index 867776cd..9739ac99 100644 > --- a/common/populate > +++ b/common/populate > @@ -132,7 +132,7 @@ _populate_xfs_qmount_option() > # Inject our quota mount options > if echo "${MOUNT_OPTIONS}" | grep -q "${quota}"; then > return > - elif echo "${MOUNT_OPTIONS}" | egrep -q '(quota|noenforce)'; then > + elif echo "${MOUNT_OPTIONS}" | grep -Eq '(quota|noenforce)'; then > _qmount_option "${quota}" > else > export MOUNT_OPTIONS="$MOUNT_OPTIONS -o ${quota}" > diff --git a/common/quota b/common/quota > index 3a758e0f..22be3c69 100644 > --- a/common/quota > +++ b/common/quota > @@ -141,7 +141,7 @@ _require_nobody() > _cat_passwd | grep -q '^nobody' > [ $? -ne 0 ] && _notrun "password file does not contain user nobody." > > - _cat_group | egrep -q '^no(body|group)' > + _cat_group | grep -Eq '^no(body|group)' > [ $? -ne 0 ] && _notrun "group file does not contain nobody/nogroup." > } > > @@ -192,7 +192,7 @@ _choose_uid() > > _choose_gid() > { > - _cat_group | egrep '^no(body|group)' | perl -ne '@a = split(/:/); END { printf "id=%d name=%s\n", $a[2],$a[0] }' > + _cat_group | grep -E '^no(body|group)' | perl -ne '@a = split(/:/); END { printf "id=%d name=%s\n", $a[2],$a[0] }' > } > > _choose_prid() > @@ -323,12 +323,12 @@ _check_quota_usage() > > # Report the block usage of root, $qa_user, and nobody > _report_quota_blocks() { > - repquota $1 | egrep "^($qa_user|root|nobody)" | awk '{print $1, $3, $4, $5}' | sort -r > + repquota $1 | grep -E "^($qa_user|root|nobody)" | awk '{print $1, $3, $4, $5}' | sort -r > } > > # Report the inode usage of root, $qa_user, and nobody > _report_quota_inodes() { > - repquota $1 | egrep "^($qa_user|root|nobody)" | awk '{print $1, $6, $7, $8}' | sort -r > + repquota $1 | grep -E "^($qa_user|root|nobody)" | awk '{print $1, $6, $7, $8}' | sort -r > } > > # Determine which type of quota we're using > diff --git a/common/rc b/common/rc > index 197c9415..da2e7279 100644 > --- a/common/rc > +++ b/common/rc > @@ -113,7 +113,7 @@ _get_hugepagesize() > { > local hugepgsz=$(awk '/Hugepagesize/ {print $2}' /proc/meminfo) > # Call _notrun if $hugepgsz is not a number > - echo "$hugepgsz" | egrep -q ^[0-9]+$ || \ > + echo "$hugepgsz" | grep -E -q ^[0-9]+$ || \ > _notrun "Cannot get the value of Hugepagesize" > echo $((hugepgsz * 1024)) > } > @@ -1080,7 +1080,7 @@ _scratch_mkfs_sized() > case $FSTYP in > xfs) > # don't override MKFS_OPTIONS that set a block size. > - echo $MKFS_OPTIONS |egrep -q "b?size=" > + echo $MKFS_OPTIONS |grep -E -q "b?size=" > if [ $? -eq 0 ]; then > _scratch_mkfs_xfs -d size=$fssize $rt_ops > else > @@ -1165,13 +1165,13 @@ _scratch_mkfs_geom() > > case $FSTYP in > xfs) > - if echo "$MKFS_OPTIONS" | egrep -q "b?size="; then > + if echo "$MKFS_OPTIONS" | grep -E -q "b?size="; then > MKFS_OPTIONS=$(echo "$MKFS_OPTIONS" | sed -r "s/(b?size=)[0-9]+k?/\1$blocksize/") > else > MKFS_OPTIONS+=" -b size=$blocksize" > fi > > - if echo "$MKFS_OPTIONS" | egrep -q "(su|sunit|sw|swidth)="; then > + if echo "$MKFS_OPTIONS" | grep -E -q "(su|sunit|sw|swidth)="; then > MKFS_OPTIONS=$(echo "$MKFS_OPTIONS" | sed -r \ > -e "s/(su|sunit)=[0-9kmg]+/su=$sunit_bytes/" \ > -e "s/(sw|swidth)=[0-9kmg]+/sw=$swidth_mult/") > @@ -1673,7 +1673,7 @@ _require_scratch_nocheck() > { > case "$FSTYP" in > glusterfs) > - echo $SCRATCH_DEV | egrep -q ":/?" > /dev/null 2>&1 > + echo $SCRATCH_DEV | grep -E -q ":/?" > /dev/null 2>&1 > if [ -z "$SCRATCH_DEV" -o "$?" != "0" ]; then > _notrun "this test requires a valid \$SCRATCH_DEV" > fi > @@ -1873,7 +1873,7 @@ _require_test() > { > case "$FSTYP" in > glusterfs) > - echo $TEST_DEV | egrep -q ":/?" > /dev/null 2>&1 > + echo $TEST_DEV | grep -E -q ":/?" > /dev/null 2>&1 > if [ -z "$TEST_DEV" -o "$?" != "0" ]; then > _notrun "this test requires a valid \$TEST_DEV" > fi > @@ -2140,7 +2140,7 @@ __scratch_uses_fsdax() > { > local ops=$(_normalize_mount_options "$MOUNT_OPTIONS") > > - echo $ops | egrep -qw "dax(=always| |$)" && return 0 > + echo $ops | grep -E -qw "dax(=always| |$)" && return 0 > return 1 > } > > @@ -2601,7 +2601,7 @@ _require_xfs_io_command() > # Test xfs_io chattr support AND > # filesystem FS_IOC_FSSETXATTR support > # 'tPnE' flags are only valid for a directory so check them on a directory. > - if echo "$param" | egrep -q 't|P|n|E'; then > + if echo "$param" | grep -E -q 't|P|n|E'; then > testio=`$XFS_IO_PROG -F -c "chattr +$param" $testdir 2>&1` > attr_info=`$XFS_IO_PROG -F -r -c "lsattr" $testdir | awk '{print $1}'` > $XFS_IO_PROG -F -r -c "chattr -$param" $testdir 2>&1 > @@ -2659,7 +2659,7 @@ _require_xfs_io_command() > "-T") > # Check O_TMPFILE support in xfs_io, kernel and fs > testio=`$XFS_IO_PROG -T -c quit $TEST_DIR 2>&1` > - echo $testio | egrep -q "invalid option|Is a directory" && \ > + echo $testio | grep -E -q "invalid option|Is a directory" && \ > _notrun "xfs_io $command support is missing" > echo $testio | grep -q "Operation not supported" && \ > _notrun "O_TMPFILE is not supported" > @@ -3217,7 +3217,7 @@ _check_generic_filesystem() > # Filter the knowen errors the UDF Verifier reports. > _udf_test_known_error_filter() > { > - egrep -v "PVD 60 Error: Interchange Level: 1, Maximum Interchange Level: 0|FSD 28 Error: Interchange Level: 1, Maximum Interchange Level: 1,|PVD 72 Warning: Volume Set Identifier: \"\*IRIX UDF\",|Warning: [0-9]+ unused blocks NOT marked as unallocated." > + grep -E -v "PVD 60 Error: Interchange Level: 1, Maximum Interchange Level: 0|FSD 28 Error: Interchange Level: 1, Maximum Interchange Level: 1,|PVD 72 Warning: Volume Set Identifier: \"\*IRIX UDF\",|Warning: [0-9]+ unused blocks NOT marked as unallocated." > > } > > @@ -3249,9 +3249,9 @@ _check_udf_filesystem() > > rm -f $seqres.checkfs > sleep 1 # Due to a problem with time stamps in udf_test > - $here/src/udf_test $opt_arg $device | tee $seqres.checkfs | egrep "Error|Warning" | \ > + $here/src/udf_test $opt_arg $device | tee $seqres.checkfs | grep -E "Error|Warning" | \ > _udf_test_known_error_filter | \ > - egrep -iv "Error count:.*[0-9]+.*total occurrences:.*[0-9]+|Warning count:.*[0-9]+.*total occurrences:.*[0-9]+" && \ > + grep -E -iv "Error count:.*[0-9]+.*total occurrences:.*[0-9]+|Warning count:.*[0-9]+.*total occurrences:.*[0-9]+" && \ > echo "Warning UDF Verifier reported errors see $seqres.checkfs." && return 1 > return 0 > } > @@ -3782,7 +3782,7 @@ _check_scratch_dax_mountopt() > > _try_scratch_mount "-o $option" > /dev/null 2>&1 || return 1 > > - if _fs_options $SCRATCH_DEV | egrep -q "dax(=always|,|$)"; then > + if _fs_options $SCRATCH_DEV | grep -E -q "dax(=always|,|$)"; then > _scratch_unmount > return 0 > else > @@ -4048,9 +4048,9 @@ _exclude_mount_option() > shift > while [ $# -gt 0 ]; do > local pattern=$1 > - echo "$pattern" | egrep -q "dax(=always|$)" && \ > + echo "$pattern" | grep -E -q "dax(=always|$)" && \ > pattern="dax(=always| |$)" > - if echo $mnt_opts | egrep -q "$pattern"; then > + if echo $mnt_opts | grep -E -q "$pattern"; then > _notrun "mount option \"$1\" not allowed in this test" > fi > shift > @@ -4329,7 +4329,7 @@ _dmesg_since_test_start() > # _dmesg_since_test_start. > _check_dmesg_for() > { > - _dmesg_since_test_start | egrep -q "$1" > + _dmesg_since_test_start | grep -E -q "$1" > } > > # Default filter for dmesg scanning. > @@ -4338,7 +4338,7 @@ _check_dmesg_for() > # lockdep. > _check_dmesg_filter() > { > - egrep -v -e "BUG: MAX_LOCKDEP_CHAIN_HLOCKS too low" \ > + grep -E -v -e "BUG: MAX_LOCKDEP_CHAIN_HLOCKS too low" \ > -e "BUG: MAX_STACK_TRACE_ENTRIES too low" > } > > @@ -4356,7 +4356,7 @@ _check_dmesg() > local filter=${1:-_check_dmesg_filter} > > _dmesg_since_test_start | $filter >$seqres.dmesg > - egrep -q -e "kernel BUG at" \ > + grep -E -q -e "kernel BUG at" \ > -e "WARNING:" \ > -e "\bBUG:" \ > -e "Oops:" \ > diff --git a/common/repair b/common/repair > index 463ef9db..8945d002 100644 > --- a/common/repair > +++ b/common/repair > @@ -105,7 +105,7 @@ _filter_repair_lostblocks() { > > _filter_dd() > { > - fgrep -v records # lose records in/out lines > + grep -F -v records # lose records in/out lines > } > > # do some controlled corrupting & ensure repair recovers us > diff --git a/common/xfs b/common/xfs > index 9f84dffb..4c6374ed 100644 > --- a/common/xfs > +++ b/common/xfs > @@ -103,7 +103,7 @@ _scratch_find_xfs_min_logblocks() > # try again without MKFS_OPTIONS because that's what _scratch_do_mkfs > # will do if we pass in the log size option. > if [ $mkfs_status -ne 0 ] && > - ! egrep -q '(log size.*too small, minimum|external log device.*too small, must be)' $tmp.mkfserr; then > + ! grep -E -q '(log size.*too small, minimum|external log device.*too small, must be)' $tmp.mkfserr; then > eval "$mkfs_cmd $extra_mkfs_options $SCRATCH_DEV" \ > 2>$tmp.mkfserr 1>$tmp.mkfsstd > mkfs_status=$? > @@ -181,7 +181,7 @@ _xfs_get_file_block_size() > { > local path="$1" > > - if ! ($XFS_IO_PROG -c "stat -v" "$path" 2>&1 | egrep -q '(rt-inherit|realtime)'); then > + if ! ($XFS_IO_PROG -c "stat -v" "$path" 2>&1 | grep -E -q '(rt-inherit|realtime)'); then > _get_block_size "$path" > return > fi > @@ -966,8 +966,8 @@ _scratch_xfs_set_metadata_field() > done > > local wr_cmd="write" > - _scratch_xfs_db -x -c "help write" | egrep -q "(-c|-d)" && value="-- ${value}" > - _scratch_xfs_db -x -c "help write" | egrep -q "(-d)" && wr_cmd="${wr_cmd} -d" > + _scratch_xfs_db -x -c "help write" | grep -E -q "(-c|-d)" && value="-- ${value}" > + _scratch_xfs_db -x -c "help write" | grep -E -q "(-d)" && wr_cmd="${wr_cmd} -d" > _scratch_xfs_db -x "${cmds[@]}" -c "${wr_cmd} ${key} ${value}" > } > > @@ -1107,8 +1107,8 @@ _force_xfsv4_mount_options() > local pquota=0 > > # Can't have group and project quotas in XFS v4 > - echo "$MOUNT_OPTIONS" | egrep -q "(gquota|grpquota|grpjquota=|gqnoenforce)" && gquota=1 > - echo "$MOUNT_OPTIONS" | egrep -q "(\bpquota|prjquota|pqnoenforce)" && pquota=1 > + echo "$MOUNT_OPTIONS" | grep -E -q "(gquota|grpquota|grpjquota=|gqnoenforce)" && gquota=1 > + echo "$MOUNT_OPTIONS" | grep -E -q "(\bpquota|prjquota|pqnoenforce)" && pquota=1 > > if [ $gquota -gt 0 ] && [ $pquota -gt 0 ]; then > export MOUNT_OPTIONS=$(echo $MOUNT_OPTIONS \ > diff --git a/tests/btrfs/011 b/tests/btrfs/011 > index 0665e126..6c3d037f 100755 > --- a/tests/btrfs/011 > +++ b/tests/btrfs/011 > @@ -133,7 +133,7 @@ workout() > _run_btrfs_util_prog filesystem show -m $SCRATCH_MNT > > # Skip -r test for configs without mirror OR replace cancel > - if echo $mkfs_options | egrep -qv "raid1|raid5|raid6|raid10" || \ > + if echo $mkfs_options | grep -E -qv "raid1|raid5|raid6|raid10" || \ > [ "${with_cancel}Q" = "cancelQ" ]; then > _scratch_unmount > /dev/null 2>&1 > _scratch_dev_pool_put > diff --git a/tests/btrfs/100 b/tests/btrfs/100 > index 9986a06e..410e83ba 100755 > --- a/tests/btrfs/100 > +++ b/tests/btrfs/100 > @@ -37,7 +37,7 @@ _run_btrfs_util_prog filesystem show -m $SCRATCH_MNT > $BTRFS_UTIL_PROG filesystem show -m $SCRATCH_MNT | _filter_btrfs_filesystem_show > > error_devid=`$BTRFS_UTIL_PROG filesystem show -m $SCRATCH_MNT |\ > - egrep $DMERROR_DEV | $AWK_PROG '{print $2}'` > + grep -E $DMERROR_DEV | $AWK_PROG '{print $2}'` > > snapshot_cmd="$BTRFS_UTIL_PROG subvolume snapshot -r $SCRATCH_MNT" > snapshot_cmd="$snapshot_cmd $SCRATCH_MNT/snap_\`date +'%H_%M_%S_%N'\`" > diff --git a/tests/btrfs/101 b/tests/btrfs/101 > index f0436f9f..e8ed8c5c 100755 > --- a/tests/btrfs/101 > +++ b/tests/btrfs/101 > @@ -38,7 +38,7 @@ _run_btrfs_util_prog filesystem show -m $SCRATCH_MNT > $BTRFS_UTIL_PROG filesystem show -m $SCRATCH_MNT | _filter_btrfs_filesystem_show > > error_devid=`$BTRFS_UTIL_PROG filesystem show -m $SCRATCH_MNT |\ > - egrep $DMERROR_DEV | $AWK_PROG '{print $2}'` > + grep -E $DMERROR_DEV | $AWK_PROG '{print $2}'` > > snapshot_cmd="$BTRFS_UTIL_PROG subvolume snapshot -r $SCRATCH_MNT" > snapshot_cmd="$snapshot_cmd $SCRATCH_MNT/snap_\`date +'%H_%M_%S_%N'\`" > diff --git a/tests/btrfs/187 b/tests/btrfs/187 > index 574636a6..d3cf05a1 100755 > --- a/tests/btrfs/187 > +++ b/tests/btrfs/187 > @@ -219,7 +219,7 @@ wait $balance_pid > # BTRFS error (device sdc): parent transid verify failed on 32243712 wanted 24 \ > # found 27 > # > -_dmesg_since_test_start | egrep -e '\bBTRFS error \(device .*?\):' > +_dmesg_since_test_start | grep -E -e '\bBTRFS error \(device .*?\):' > > status=0 > exit > diff --git a/tests/btrfs/252 b/tests/btrfs/252 > index 65ebe571..8b4809b7 100755 > --- a/tests/btrfs/252 > +++ b/tests/btrfs/252 > @@ -180,7 +180,7 @@ for i in "${!snapshots[@]}"; do > # case, so we don't have a mismatch with the golden output in case we > # run with a non default $LOAD_FACTOR (default is 1). We only want the > # mismatch with the golden output in case there's a checksum failure. > - $FSSUM_PROG -r "$snap_csum" "$snap_copy" | egrep -v '^OK$' > + $FSSUM_PROG -r "$snap_csum" "$snap_copy" | grep -E -v '^OK$' > done > > echo "Silence is golden" > diff --git a/tests/ext4/006 b/tests/ext4/006 > index 48ed6bee..8792167b 100755 > --- a/tests/ext4/006 > +++ b/tests/ext4/006 > @@ -130,7 +130,7 @@ cat "$ROUND2_LOG" >> $seqres.full > echo "++ check fs (2)" >> $seqres.full > _check_scratch_fs >> $seqres.full 2>&1 > > -egrep -q '(did not fix|makes no progress)' $seqres.full && echo "e2fsck failed" | tee -a $seqres.full > +grep -E -q '(did not fix|makes no progress)' $seqres.full && echo "e2fsck failed" | tee -a $seqres.full > if [ "$(wc -l < "$ROUND2_LOG")" -ne 8 ]; then > echo "e2fsck did not fix everything" | tee -a $seqres.full > fi > diff --git a/tests/generic/164 b/tests/generic/164 > index 56c05e37..8ab71c72 100755 > --- a/tests/generic/164 > +++ b/tests/generic/164 > @@ -50,7 +50,7 @@ _cp_reflink $testdir/file1 $testdir/file3 > _scratch_cycle_mount > > fbytes() { > - egrep -v '(61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61|62 62 62 62 62 62 62 62 62 62 62 62 62 62 62 62)' > + grep -E -v '(61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61|62 62 62 62 62 62 62 62 62 62 62 62 62 62 62 62)' > } > > reader() { > diff --git a/tests/generic/165 b/tests/generic/165 > index bc24bcab..6deb6623 100755 > --- a/tests/generic/165 > +++ b/tests/generic/165 > @@ -51,7 +51,7 @@ _cp_reflink $testdir/file1 $testdir/file3 > _scratch_cycle_mount > > fbytes() { > - egrep -v '(61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61|62 62 62 62 62 62 62 62 62 62 62 62 62 62 62 62)' > + grep -E -v '(61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61|62 62 62 62 62 62 62 62 62 62 62 62 62 62 62 62)' > } > > reader() { > diff --git a/tests/generic/454 b/tests/generic/454 > index 133e2e9d..3c9b39d0 100755 > --- a/tests/generic/454 > +++ b/tests/generic/454 > @@ -168,7 +168,7 @@ testf "combmark_\xe1\x80\x9c\xe1\x80\xad\xe1\x80\xaf.txt" "combining marks" > testf "combmark_\xe1\x80\x9c\xe1\x80\xaf\xe1\x80\xad.txt" "combining marks" > > echo "Uniqueness of keys?" > -crazy_keys="$(_getfattr --absolute-names -d "${testfile}" | egrep -c '(french_|chinese_|greek_|arabic_|urk)')" > +crazy_keys="$(_getfattr --absolute-names -d "${testfile}" | grep -E -c '(french_|chinese_|greek_|arabic_|urk)')" > expected_keys=11 > test "${crazy_keys}" -ne "${expected_keys}" && echo "Expected ${expected_keys} keys, saw ${crazy_keys}." > > diff --git a/tests/generic/670 b/tests/generic/670 > index 4a895d90..67de1674 100755 > --- a/tests/generic/670 > +++ b/tests/generic/670 > @@ -43,7 +43,7 @@ fbytes() { > # Different with generic/164,165, mread copies data from mmapped area > # one-byte-at-a-time, which may cause races during reflink_range(). > # So the result of _mread_range() may be a mix of 61 and 62. > - egrep -v '((61|62) ){15}(61|62)' > + grep -E -v '((61|62) ){15}(61|62)' > } > > reader() { > diff --git a/tests/xfs/008 b/tests/xfs/008 > index a53f6c92..e7d6153b 100755 > --- a/tests/xfs/008 > +++ b/tests/xfs/008 > @@ -46,7 +46,7 @@ _do_test() > echo "holes is in range" > else > # quick check - how many holes did we get? > - count=`xfs_bmap $out | egrep -c ': hole'` > + count=`xfs_bmap $out | grep -E -c ': hole'` > # blocks can end up adjacent, therefore number of holes varies > _within_tolerance "holes" $count $_holes 10% -v > fi > diff --git a/tests/xfs/012 b/tests/xfs/012 > index 5ebc9058..e0dccc4e 100755 > --- a/tests/xfs/012 > +++ b/tests/xfs/012 > @@ -50,7 +50,7 @@ _do_test() > if [ $failed -eq 0 ] > then > # quick check - how many holes did we get? > - count=`xfs_bmap $out | egrep -c ': hole'` > + count=`xfs_bmap $out | grep -E -c ': hole'` > echo " $count hole(s) detected" > # and how big was the file? > _filesize $out > diff --git a/tests/xfs/033 b/tests/xfs/033 > index d47da0d6..ef5dc4fa 100755 > --- a/tests/xfs/033 > +++ b/tests/xfs/033 > @@ -45,7 +45,7 @@ _check_root_inos() > # > _filter_bad_ids() > { > - egrep -v 'bad user id 0xffffffff|bad group id 0xffffffff' > + grep -E -v 'bad user id 0xffffffff|bad group id 0xffffffff' > } > > # real QA test starts here > diff --git a/tests/xfs/064 b/tests/xfs/064 > index a81b226b..f67c29fd 100755 > --- a/tests/xfs/064 > +++ b/tests/xfs/064 > @@ -31,7 +31,7 @@ _ls_size_filter() > # Filter out the housekeeping files of xfsrestore > # > $AWK_PROG 'NF == 9 { print $5, $9 }' |\ > - egrep -v 'dumpdir|housekeeping|dirattr|dirextattr|namreg|state|tree' > + grep -E -v 'dumpdir|housekeeping|dirattr|dirextattr|namreg|state|tree' > } > > # real QA test starts here > @@ -48,7 +48,7 @@ while [ $i -le 9 ]; do > if [ $i -gt 0 ]; then > sleep 2 > _modify_level $i > - fi > + fi > > _stable_fs > sleep 2 > diff --git a/tests/xfs/065 b/tests/xfs/065 > index 8485dee6..819d385e 100755 > --- a/tests/xfs/065 > +++ b/tests/xfs/065 > @@ -37,7 +37,7 @@ _list_dir() > find $__dir -exec $here/src/lstat64 -t {} \; |\ > sed -e 's/.*dumpdir/dumpdir/' -e '/^dumpdir /d' |\ > sed -e 's/.*restoredir/restoredir/' -e '/^restoredir /d' |\ > - egrep -v 'housekeeping|dirattr|dirextattr|namreg|state|tree' |\ > + grep -E -v 'housekeeping|dirattr|dirextattr|namreg|state|tree' |\ > awk '$3 ~ /^d/ { $2 = "XXX" } {print}' |\ > LC_COLLATE=POSIX sort > } > diff --git a/tests/xfs/083 b/tests/xfs/083 > index a9acc9f5..edab3b7b 100755 > --- a/tests/xfs/083 > +++ b/tests/xfs/083 > @@ -145,7 +145,7 @@ cat "$ROUND2_LOG" >> $seqres.full > echo "++ check fs (2)" >> $seqres.full > _repair_scratch_fs >> $seqres.full 2>&1 > > -egrep -q '(did not fix|makes no progress)' $seqres.full && echo "xfs_repair failed" | tee -a $seqres.full > +grep -E -q '(did not fix|makes no progress)' $seqres.full && echo "xfs_repair failed" | tee -a $seqres.full > if [ "$(wc -l < "$ROUND2_LOG")" -ne 8 ]; then > echo "xfs_repair did not fix everything" | tee -a $seqres.full > fi > diff --git a/tests/xfs/122 b/tests/xfs/122 > index 18748e67..91083d60 100755 > --- a/tests/xfs/122 > +++ b/tests/xfs/122 > @@ -182,8 +182,8 @@ echo 'int main(int argc, char *argv[]) {' >>$cprog > # > cat /usr/include/xfs/xfs*.h | indent |\ > _attribute_filter |\ > -egrep '(} *xfs_.*_t|^struct xfs_[a-z0-9_]*$)' |\ > -egrep -v -f $tmp.ignore |\ > +grep -E '(} *xfs_.*_t|^struct xfs_[a-z0-9_]*$)' |\ > +grep -E -v -f $tmp.ignore |\ > sed -e 's/^.*}[[:space:]]*//g' -e 's/;.*$//g' -e 's/_t, /_t\n/g' |\ > sort | uniq |\ > awk '{printf("printf(\"sizeof(%s) = %%zu\\n\", sizeof(%s));\n", $0, $0);}' |\ > diff --git a/tests/xfs/138 b/tests/xfs/138 > index 966ac03a..c49d2d9e 100755 > --- a/tests/xfs/138 > +++ b/tests/xfs/138 > @@ -33,7 +33,7 @@ echo "Test with interactive" > (echo "sb 0"; sleep 0.5; > echo "p magicnum"; sleep 0.5; > echo "source $tmp.a"; sleep 0.5; > - echo "p magicnum"; sleep 0.5) | _scratch_xfs_db 2>&1 | sed -e 's/xfs_db> //g' -e 's/0x58465342/XFS_MAGIC/g' | egrep '(This is file|magicnum =)' > + echo "p magicnum"; sleep 0.5) | _scratch_xfs_db 2>&1 | sed -e 's/xfs_db> //g' -e 's/0x58465342/XFS_MAGIC/g' | grep -E '(This is file|magicnum =)' > > # success, all done > status=0 > diff --git a/tests/xfs/185 b/tests/xfs/185 > index f0e87642..73b21092 100755 > --- a/tests/xfs/185 > +++ b/tests/xfs/185 > @@ -108,7 +108,7 @@ expected_end="$(( (alloc_rtx * rtextsize - 1) / 512 ))" > # file_offset file_end physical_offset physical_end > rtfile_exts() { > $XFS_IO_PROG -c 'bmap -elp' $rtfile | \ > - egrep -v '(^/|EXT:|hole)' | \ > + grep -E -v '(^/|EXT:|hole)' | \ > tr ':.[]' ' ' | \ > while read junk foff fend physoff physend junk; do > echo "$foff $fend $physoff $physend" > diff --git a/tests/xfs/186 b/tests/xfs/186 > index b54fcf26..f44158e3 100755 > --- a/tests/xfs/186 > +++ b/tests/xfs/186 > @@ -55,8 +55,8 @@ _filter_inode() > { > tee -a $seqres.full | \ > sed -e "s/core.forkoff/forkoff/g" | \ > - egrep '^u.sfdir2|^u.sfdir3|^a.sfattr|forkoff' | \ > - egrep -v 'inumber|parent' | \ > + grep -E '^u.sfdir2|^u.sfdir3|^a.sfattr|forkoff' | \ > + grep -E -v 'inumber|parent' | \ > sed -e s/sfdir3/sfdir2/g | \ > grep -v filetype > } > diff --git a/tests/xfs/293 b/tests/xfs/293 > index 20f8c486..7a17eb81 100755 > --- a/tests/xfs/293 > +++ b/tests/xfs/293 > @@ -33,7 +33,7 @@ esac > _require_command "$(type -P $CAT)" $CAT > > for COMMAND in `$XFS_IO_PROG -c help | awk '{print $1}' | grep -v "^Use"`; do > - $CAT "$MANPAGE" | egrep -q "^\.B.*$COMMAND" || \ > + $CAT "$MANPAGE" | grep -E -q "^\.B.*$COMMAND" || \ > echo "$COMMAND not documented in the xfs_io manpage" > done > > diff --git a/tests/xfs/330 b/tests/xfs/330 > index 40be4c46..5a82a1fd 100755 > --- a/tests/xfs/330 > +++ b/tests/xfs/330 > @@ -26,7 +26,7 @@ _require_nobody > > do_repquota() > { > - repquota $SCRATCH_MNT | egrep '^(fsgqa|root|nobody)' | sort -r > + repquota $SCRATCH_MNT | grep -E '^(fsgqa|root|nobody)' | sort -r > } > > rm -f "$seqres.full" > diff --git a/tests/xfs/422 b/tests/xfs/422 > index fdbb8bf1..f3c63e8d 100755 > --- a/tests/xfs/422 > +++ b/tests/xfs/422 > @@ -73,7 +73,7 @@ cpus=$(( $($here/src/feature -o) * 4 * LOAD_FACTOR)) > > echo "Concurrent repair" > filter_output() { > - egrep -v '(Device or resource busy|Invalid argument)' > + grep -E -v '(Device or resource busy|Invalid argument)' > } > freeze_loop() { > end="$1" > diff --git a/tests/xfs/499 b/tests/xfs/499 > index b5597708..9672f95d 100755 > --- a/tests/xfs/499 > +++ b/tests/xfs/499 > @@ -44,7 +44,7 @@ struct ftrace_chk { > char *str; > } syms[] = { > ENDL > -egrep '(__print_flags|__print_symbolic)' $ftrace_dir*/*/format | \ > +grep -E '(__print_flags|__print_symbolic)' $ftrace_dir*/*/format | \ > sed -f $sedprog | grep '^{' | sort | uniq >> $cprog > cat >> $cprog << ENDL > }; > diff --git a/tests/xfs/505 b/tests/xfs/505 > index 71fb6e9d..0601b1a8 100755 > --- a/tests/xfs/505 > +++ b/tests/xfs/505 > @@ -29,7 +29,7 @@ esac > _require_command "$(type -P $CAT)" $CAT > > for COMMAND in `$XFS_SPACEMAN_PROG -c help $TEST_DIR | awk '{print $1}' | grep -v "^Use"`; do > - $CAT "$MANPAGE" | egrep -q "^\.B.*$COMMAND" || \ > + $CAT "$MANPAGE" | grep -E -q "^\.B.*$COMMAND" || \ > echo "$COMMAND not documented in the xfs_spaceman manpage" > done > > diff --git a/tests/xfs/514 b/tests/xfs/514 > index cf5588f2..94f98398 100755 > --- a/tests/xfs/514 > +++ b/tests/xfs/514 > @@ -41,7 +41,7 @@ truncate -s 128m $file > $MKFS_XFS_PROG $file >> /dev/null > > for COMMAND in `$XFS_DB_PROG -x -c help $file | awk '{print $1}' | grep -v "^Use"`; do > - $CAT "$MANPAGE" | egrep -q "^\.B.*$COMMAND" || \ > + $CAT "$MANPAGE" | grep -E -q "^\.B.*$COMMAND" || \ > echo "$COMMAND not documented in the xfs_db manpage" > done > > diff --git a/tests/xfs/515 b/tests/xfs/515 > index 2d7bbb35..adb2bd6f 100755 > --- a/tests/xfs/515 > +++ b/tests/xfs/515 > @@ -37,7 +37,7 @@ esac > _require_command "$(type -P $CAT)" $CAT > > for COMMAND in `$XFS_QUOTA_PROG -x -c help $file | awk '{print $1}' | grep -v "^Use"`; do > - $CAT "$MANPAGE" | egrep -q "^\.B.*$COMMAND" || \ > + $CAT "$MANPAGE" | grep -E -q "^\.B.*$COMMAND" || \ > echo "$COMMAND not documented in the xfs_quota manpage" > done > > diff --git a/tests/xfs/517 b/tests/xfs/517 > index 6877af13..99fc89b0 100755 > --- a/tests/xfs/517 > +++ b/tests/xfs/517 > @@ -70,7 +70,7 @@ cpus=$(( $(src/feature -o) * 4 * LOAD_FACTOR)) > > echo "Concurrent fsmap and freeze" > filter_output() { > - egrep -v '(Device or resource busy|Invalid argument)' > + grep -E -v '(Device or resource busy|Invalid argument)' > } > freeze_loop() { > end="$1" > diff --git a/tests/xfs/520 b/tests/xfs/520 > index 2fceb07c..dd6d845e 100755 > --- a/tests/xfs/520 > +++ b/tests/xfs/520 > @@ -52,7 +52,7 @@ force_crafted_metadata() { > fi > > _dmesg_since_test_start | tac | sed -ne "0,\#${kmsg}#p" | tac | \ > - egrep -q 'Metadata corruption detected at' && hasmsg=1 > + grep -E -q 'Metadata corruption detected at' && hasmsg=1 > > _scratch_unmount > /dev/null 2>&1 > [ $mounted -eq 0 -o $hasmsg -eq 1 ] || \ > diff --git a/tests/xfs/530 b/tests/xfs/530 > index 9c6f44d7..c960738d 100755 > --- a/tests/xfs/530 > +++ b/tests/xfs/530 > @@ -73,7 +73,7 @@ _try_scratch_mount || _notrun "Couldn't mount fs with synthetic rt volume" > formatted_blksz="$(_get_block_size $SCRATCH_MNT)" > test "$formatted_blksz" -ne "$dbsize" && \ > _notrun "Tried to format with $dbsize blocksize, got $formatted_blksz." > -$XFS_INFO_PROG $SCRATCH_MNT | egrep -q 'realtime.*blocks=0' && \ > +$XFS_INFO_PROG $SCRATCH_MNT | grep -E -q 'realtime.*blocks=0' && \ > _notrun "Filesystem should have a realtime volume" > > echo "Consume free space" > diff --git a/tests/xfs/539 b/tests/xfs/539 > index 77b44c89..778dce85 100755 > --- a/tests/xfs/539 > +++ b/tests/xfs/539 > @@ -36,7 +36,7 @@ dmesg_since_test_tag() > > check_dmesg_for_since_tag() > { > - dmesg_since_test_tag | egrep -q "$1" > + dmesg_since_test_tag | grep -E -q "$1" > } > > echo "Silence is golden." > -- > 2.31.1 > ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 1/2] egrep, fgrep: deprecated 2022-09-14 15:15 ` [PATCH 1/2] egrep, fgrep: deprecated Zorro Lang @ 2022-09-15 5:27 ` Murphy Zhou 2022-09-15 6:59 ` Zorro Lang 0 siblings, 1 reply; 9+ messages in thread From: Murphy Zhou @ 2022-09-15 5:27 UTC (permalink / raw) To: Zorro Lang; +Cc: fstests Aha, I missed that. Your patch looks fine and let's go with it. Thanks~ On Wed, Sep 14, 2022 at 11:15 PM Zorro Lang <zlang@redhat.com> wrote: > > On Wed, Sep 14, 2022 at 05:06:09PM +0800, Murphy Zhou wrote: > > Since this grep commit: > > commit a9515624709865d480e3142fd959bccd1c9372d1 > > Author: Paul Eggert <eggert@cs.ucla.edu> > > Date: Sun Aug 15 10:52:13 2021 -0700 > > > > egrep, fgrep: now obsolete > > > > egrep will trigger a warning like: > > +egrep: warning: egrep is obsolescent; using grep -E > > > > This will break many gold output. > > > > Signed-off-by: Murphy Zhou <jencce.kernel@gmail.com> > > --- > > I've sent a patch for this issue, and it's been reviewed: > https://lore.kernel.org/fstests/20220913125258.exj4iszolctiuxv2@zlang-mailbox/T/#t > > Welcome more review points, if you still find more problems after merging it. > > Thanks, > Zorro > > > check | 2 +- > > common/btrfs | 4 ++-- > > common/dmlogwrites | 2 +- > > common/dump | 4 ++-- > > common/encrypt | 4 ++-- > > common/filter | 2 +- > > common/fuzzy | 6 +++--- > > common/populate | 2 +- > > common/quota | 8 ++++---- > > common/rc | 36 ++++++++++++++++++------------------ > > common/repair | 2 +- > > common/xfs | 12 ++++++------ > > tests/btrfs/011 | 2 +- > > tests/btrfs/100 | 2 +- > > tests/btrfs/101 | 2 +- > > tests/btrfs/187 | 2 +- > > tests/btrfs/252 | 2 +- > > tests/ext4/006 | 2 +- > > tests/generic/164 | 2 +- > > tests/generic/165 | 2 +- > > tests/generic/454 | 2 +- > > tests/generic/670 | 2 +- > > tests/xfs/008 | 2 +- > > tests/xfs/012 | 2 +- > > tests/xfs/033 | 2 +- > > tests/xfs/064 | 4 ++-- > > tests/xfs/065 | 2 +- > > tests/xfs/083 | 2 +- > > tests/xfs/122 | 4 ++-- > > tests/xfs/138 | 2 +- > > tests/xfs/185 | 2 +- > > tests/xfs/186 | 4 ++-- > > tests/xfs/293 | 2 +- > > tests/xfs/330 | 2 +- > > tests/xfs/422 | 2 +- > > tests/xfs/499 | 2 +- > > tests/xfs/505 | 2 +- > > tests/xfs/514 | 2 +- > > tests/xfs/515 | 2 +- > > tests/xfs/517 | 2 +- > > tests/xfs/520 | 2 +- > > tests/xfs/530 | 2 +- > > tests/xfs/539 | 2 +- > > 43 files changed, 76 insertions(+), 76 deletions(-) > > > > diff --git a/check b/check > > index 0b2f10ed..1a43c116 100755 > > --- a/check > > +++ b/check > > @@ -389,7 +389,7 @@ if $have_test_arg; then > > test_name=`basename $t` > > group_file=$SRC_DIR/$test_dir/group.list > > > > - if egrep -q "^$test_name" $group_file; then > > + if grep -Eq "^$test_name" $group_file; then > > # in group file ... OK > > echo $SRC_DIR/$test_dir/$test_name \ > > >>$tmp.arglist > > diff --git a/common/btrfs b/common/btrfs > > index bd2639bf..d27d3384 100644 > > --- a/common/btrfs > > +++ b/common/btrfs > > @@ -9,7 +9,7 @@ _btrfs_get_subvolid() > > mnt=$1 > > name=$2 > > > > - $BTRFS_UTIL_PROG sub list $mnt | egrep "\s$name$" | $AWK_PROG '{ print $2 }' > > + $BTRFS_UTIL_PROG sub list $mnt | grep -E "\s$name$" | $AWK_PROG '{ print $2 }' > > } > > > > # _require_btrfs_command <command> [<subcommand>|<option>] > > @@ -183,7 +183,7 @@ _check_btrfs_filesystem() > > > > _require_btrfs_dev_del_by_devid() > > { > > - $BTRFS_UTIL_PROG device delete --help | egrep devid > /dev/null 2>&1 > > + $BTRFS_UTIL_PROG device delete --help | grep -E devid > /dev/null 2>&1 > > [ $? -eq 0 ] || _notrun "$BTRFS_UTIL_PROG too old "\ > > "(must support 'btrfs device delete <devid> /<mnt>')" > > } > > diff --git a/common/dmlogwrites b/common/dmlogwrites > > index 66c57e2b..9fa1c977 100644 > > --- a/common/dmlogwrites > > +++ b/common/dmlogwrites > > @@ -51,7 +51,7 @@ _require_log_writes_dax_mountopt() > > # Check options to be sure. > > # XFS ignores dax option(or changes it to dax=never) > > # and goes on if dev underneath does not support dax. > > - _fs_options $LOGWRITES_DMDEV | egrep -q "dax(=always|,|$)" > > + _fs_options $LOGWRITES_DMDEV | grep -Eq "dax(=always|,|$)" > > ret=$? > > _log_writes_cleanup > > if [ $ret -ne 0 ]; then > > diff --git a/common/dump b/common/dump > > index 0dcc9655..8e0446d9 100644 > > --- a/common/dump > > +++ b/common/dump > > @@ -128,7 +128,7 @@ _check_onl() > > fi > > > > > > - if egrep -i 'onl|ready' $tmp.status | grep -iv 'not ready' >/dev/null; then > > + if grep -Ei 'onl|ready' $tmp.status | grep -iv 'not ready' >/dev/null; then > > : > > else > > echo "ERROR: $dumptape is not online" > > @@ -145,7 +145,7 @@ _wait_tape() > > i=0 > > while [ $i -lt 20 ]; do > > echo "Checking status..." >>$seqres.full > > - if _mt status 2>&1 | tee -a $seqres.full | egrep -i "onl|ready" >/dev/null; then > > + if _mt status 2>&1 | tee -a $seqres.full | grep -Ei "onl|ready" >/dev/null; then > > break; > > else > > sleep 1 > > diff --git a/common/encrypt b/common/encrypt > > index 8f3c46f6..5e3c6c4b 100644 > > --- a/common/encrypt > > +++ b/common/encrypt > > @@ -49,7 +49,7 @@ _require_scratch_encryption() > > # some older kernels and is ext4-specific anyway.) > > mkdir $SCRATCH_MNT/tmpdir > > if _set_encpolicy $SCRATCH_MNT/tmpdir 2>&1 >>$seqres.full | \ > > - egrep -q 'Inappropriate ioctl for device|Operation not supported' > > + grep -Eq 'Inappropriate ioctl for device|Operation not supported' > > then > > _notrun "kernel does not support $FSTYP encryption" > > fi > > @@ -125,7 +125,7 @@ _require_encryption_policy_support() > > local keyspec=$(_generate_session_encryption_key) > > fi > > if _set_encpolicy $dir $keyspec $set_encpolicy_args \ > > - 2>&1 >>$seqres.full | egrep -q 'Invalid argument'; then > > + 2>&1 >>$seqres.full | grep -Eq 'Invalid argument'; then > > _notrun "kernel does not support encryption policy: '$set_encpolicy_args'" > > fi > > # fscrypt allows setting policies with modes it knows about, even > > diff --git a/common/filter b/common/filter > > index 28dea646..6433a30e 100644 > > --- a/common/filter > > +++ b/common/filter > > @@ -347,7 +347,7 @@ _filter_size_to_bytes() > > # verbose output > > _filter_fstrim() > > { > > - egrep -o "[0-9]+ bytes" | $AWK_PROG '{print $1}' > > + grep -Eo "[0-9]+ bytes" | $AWK_PROG '{print $1}' > > } > > > > # Remove the ending dot appended to mount error message, util-linux 2.30 > > diff --git a/common/fuzzy b/common/fuzzy > > index 809dee54..b4fda6f5 100644 > > --- a/common/fuzzy > > +++ b/common/fuzzy > > @@ -91,11 +91,11 @@ __filter_xfs_db_print_fields() { > > else > > echo "${fuzzkey}" > > fi > > - done | egrep "${filter}" > > + done | grep -E "${filter}" > > } > > > > # Navigate to some part of the filesystem and print the field info. > > -# The first argument is an egrep filter for the fields > > +# The first argument is an grep filter for the fields > > # The rest of the arguments are xfs_db commands to locate the metadata. > > _scratch_xfs_list_metadata_fields() { > > filter="$1" > > @@ -289,7 +289,7 @@ _scratch_xfs_list_fuzz_verbs() { > > } > > > > # Fuzz some of the fields of some piece of metadata > > -# The first argument is an egrep filter for the field names > > +# The first argument is an grep filter for the field names > > # The second argument is the repair mode (online, offline, both) > > # The rest of the arguments are xfs_db commands to locate the metadata. > > # > > diff --git a/common/populate b/common/populate > > index 867776cd..9739ac99 100644 > > --- a/common/populate > > +++ b/common/populate > > @@ -132,7 +132,7 @@ _populate_xfs_qmount_option() > > # Inject our quota mount options > > if echo "${MOUNT_OPTIONS}" | grep -q "${quota}"; then > > return > > - elif echo "${MOUNT_OPTIONS}" | egrep -q '(quota|noenforce)'; then > > + elif echo "${MOUNT_OPTIONS}" | grep -Eq '(quota|noenforce)'; then > > _qmount_option "${quota}" > > else > > export MOUNT_OPTIONS="$MOUNT_OPTIONS -o ${quota}" > > diff --git a/common/quota b/common/quota > > index 3a758e0f..22be3c69 100644 > > --- a/common/quota > > +++ b/common/quota > > @@ -141,7 +141,7 @@ _require_nobody() > > _cat_passwd | grep -q '^nobody' > > [ $? -ne 0 ] && _notrun "password file does not contain user nobody." > > > > - _cat_group | egrep -q '^no(body|group)' > > + _cat_group | grep -Eq '^no(body|group)' > > [ $? -ne 0 ] && _notrun "group file does not contain nobody/nogroup." > > } > > > > @@ -192,7 +192,7 @@ _choose_uid() > > > > _choose_gid() > > { > > - _cat_group | egrep '^no(body|group)' | perl -ne '@a = split(/:/); END { printf "id=%d name=%s\n", $a[2],$a[0] }' > > + _cat_group | grep -E '^no(body|group)' | perl -ne '@a = split(/:/); END { printf "id=%d name=%s\n", $a[2],$a[0] }' > > } > > > > _choose_prid() > > @@ -323,12 +323,12 @@ _check_quota_usage() > > > > # Report the block usage of root, $qa_user, and nobody > > _report_quota_blocks() { > > - repquota $1 | egrep "^($qa_user|root|nobody)" | awk '{print $1, $3, $4, $5}' | sort -r > > + repquota $1 | grep -E "^($qa_user|root|nobody)" | awk '{print $1, $3, $4, $5}' | sort -r > > } > > > > # Report the inode usage of root, $qa_user, and nobody > > _report_quota_inodes() { > > - repquota $1 | egrep "^($qa_user|root|nobody)" | awk '{print $1, $6, $7, $8}' | sort -r > > + repquota $1 | grep -E "^($qa_user|root|nobody)" | awk '{print $1, $6, $7, $8}' | sort -r > > } > > > > # Determine which type of quota we're using > > diff --git a/common/rc b/common/rc > > index 197c9415..da2e7279 100644 > > --- a/common/rc > > +++ b/common/rc > > @@ -113,7 +113,7 @@ _get_hugepagesize() > > { > > local hugepgsz=$(awk '/Hugepagesize/ {print $2}' /proc/meminfo) > > # Call _notrun if $hugepgsz is not a number > > - echo "$hugepgsz" | egrep -q ^[0-9]+$ || \ > > + echo "$hugepgsz" | grep -E -q ^[0-9]+$ || \ > > _notrun "Cannot get the value of Hugepagesize" > > echo $((hugepgsz * 1024)) > > } > > @@ -1080,7 +1080,7 @@ _scratch_mkfs_sized() > > case $FSTYP in > > xfs) > > # don't override MKFS_OPTIONS that set a block size. > > - echo $MKFS_OPTIONS |egrep -q "b?size=" > > + echo $MKFS_OPTIONS |grep -E -q "b?size=" > > if [ $? -eq 0 ]; then > > _scratch_mkfs_xfs -d size=$fssize $rt_ops > > else > > @@ -1165,13 +1165,13 @@ _scratch_mkfs_geom() > > > > case $FSTYP in > > xfs) > > - if echo "$MKFS_OPTIONS" | egrep -q "b?size="; then > > + if echo "$MKFS_OPTIONS" | grep -E -q "b?size="; then > > MKFS_OPTIONS=$(echo "$MKFS_OPTIONS" | sed -r "s/(b?size=)[0-9]+k?/\1$blocksize/") > > else > > MKFS_OPTIONS+=" -b size=$blocksize" > > fi > > > > - if echo "$MKFS_OPTIONS" | egrep -q "(su|sunit|sw|swidth)="; then > > + if echo "$MKFS_OPTIONS" | grep -E -q "(su|sunit|sw|swidth)="; then > > MKFS_OPTIONS=$(echo "$MKFS_OPTIONS" | sed -r \ > > -e "s/(su|sunit)=[0-9kmg]+/su=$sunit_bytes/" \ > > -e "s/(sw|swidth)=[0-9kmg]+/sw=$swidth_mult/") > > @@ -1673,7 +1673,7 @@ _require_scratch_nocheck() > > { > > case "$FSTYP" in > > glusterfs) > > - echo $SCRATCH_DEV | egrep -q ":/?" > /dev/null 2>&1 > > + echo $SCRATCH_DEV | grep -E -q ":/?" > /dev/null 2>&1 > > if [ -z "$SCRATCH_DEV" -o "$?" != "0" ]; then > > _notrun "this test requires a valid \$SCRATCH_DEV" > > fi > > @@ -1873,7 +1873,7 @@ _require_test() > > { > > case "$FSTYP" in > > glusterfs) > > - echo $TEST_DEV | egrep -q ":/?" > /dev/null 2>&1 > > + echo $TEST_DEV | grep -E -q ":/?" > /dev/null 2>&1 > > if [ -z "$TEST_DEV" -o "$?" != "0" ]; then > > _notrun "this test requires a valid \$TEST_DEV" > > fi > > @@ -2140,7 +2140,7 @@ __scratch_uses_fsdax() > > { > > local ops=$(_normalize_mount_options "$MOUNT_OPTIONS") > > > > - echo $ops | egrep -qw "dax(=always| |$)" && return 0 > > + echo $ops | grep -E -qw "dax(=always| |$)" && return 0 > > return 1 > > } > > > > @@ -2601,7 +2601,7 @@ _require_xfs_io_command() > > # Test xfs_io chattr support AND > > # filesystem FS_IOC_FSSETXATTR support > > # 'tPnE' flags are only valid for a directory so check them on a directory. > > - if echo "$param" | egrep -q 't|P|n|E'; then > > + if echo "$param" | grep -E -q 't|P|n|E'; then > > testio=`$XFS_IO_PROG -F -c "chattr +$param" $testdir 2>&1` > > attr_info=`$XFS_IO_PROG -F -r -c "lsattr" $testdir | awk '{print $1}'` > > $XFS_IO_PROG -F -r -c "chattr -$param" $testdir 2>&1 > > @@ -2659,7 +2659,7 @@ _require_xfs_io_command() > > "-T") > > # Check O_TMPFILE support in xfs_io, kernel and fs > > testio=`$XFS_IO_PROG -T -c quit $TEST_DIR 2>&1` > > - echo $testio | egrep -q "invalid option|Is a directory" && \ > > + echo $testio | grep -E -q "invalid option|Is a directory" && \ > > _notrun "xfs_io $command support is missing" > > echo $testio | grep -q "Operation not supported" && \ > > _notrun "O_TMPFILE is not supported" > > @@ -3217,7 +3217,7 @@ _check_generic_filesystem() > > # Filter the knowen errors the UDF Verifier reports. > > _udf_test_known_error_filter() > > { > > - egrep -v "PVD 60 Error: Interchange Level: 1, Maximum Interchange Level: 0|FSD 28 Error: Interchange Level: 1, Maximum Interchange Level: 1,|PVD 72 Warning: Volume Set Identifier: \"\*IRIX UDF\",|Warning: [0-9]+ unused blocks NOT marked as unallocated." > > + grep -E -v "PVD 60 Error: Interchange Level: 1, Maximum Interchange Level: 0|FSD 28 Error: Interchange Level: 1, Maximum Interchange Level: 1,|PVD 72 Warning: Volume Set Identifier: \"\*IRIX UDF\",|Warning: [0-9]+ unused blocks NOT marked as unallocated." > > > > } > > > > @@ -3249,9 +3249,9 @@ _check_udf_filesystem() > > > > rm -f $seqres.checkfs > > sleep 1 # Due to a problem with time stamps in udf_test > > - $here/src/udf_test $opt_arg $device | tee $seqres.checkfs | egrep "Error|Warning" | \ > > + $here/src/udf_test $opt_arg $device | tee $seqres.checkfs | grep -E "Error|Warning" | \ > > _udf_test_known_error_filter | \ > > - egrep -iv "Error count:.*[0-9]+.*total occurrences:.*[0-9]+|Warning count:.*[0-9]+.*total occurrences:.*[0-9]+" && \ > > + grep -E -iv "Error count:.*[0-9]+.*total occurrences:.*[0-9]+|Warning count:.*[0-9]+.*total occurrences:.*[0-9]+" && \ > > echo "Warning UDF Verifier reported errors see $seqres.checkfs." && return 1 > > return 0 > > } > > @@ -3782,7 +3782,7 @@ _check_scratch_dax_mountopt() > > > > _try_scratch_mount "-o $option" > /dev/null 2>&1 || return 1 > > > > - if _fs_options $SCRATCH_DEV | egrep -q "dax(=always|,|$)"; then > > + if _fs_options $SCRATCH_DEV | grep -E -q "dax(=always|,|$)"; then > > _scratch_unmount > > return 0 > > else > > @@ -4048,9 +4048,9 @@ _exclude_mount_option() > > shift > > while [ $# -gt 0 ]; do > > local pattern=$1 > > - echo "$pattern" | egrep -q "dax(=always|$)" && \ > > + echo "$pattern" | grep -E -q "dax(=always|$)" && \ > > pattern="dax(=always| |$)" > > - if echo $mnt_opts | egrep -q "$pattern"; then > > + if echo $mnt_opts | grep -E -q "$pattern"; then > > _notrun "mount option \"$1\" not allowed in this test" > > fi > > shift > > @@ -4329,7 +4329,7 @@ _dmesg_since_test_start() > > # _dmesg_since_test_start. > > _check_dmesg_for() > > { > > - _dmesg_since_test_start | egrep -q "$1" > > + _dmesg_since_test_start | grep -E -q "$1" > > } > > > > # Default filter for dmesg scanning. > > @@ -4338,7 +4338,7 @@ _check_dmesg_for() > > # lockdep. > > _check_dmesg_filter() > > { > > - egrep -v -e "BUG: MAX_LOCKDEP_CHAIN_HLOCKS too low" \ > > + grep -E -v -e "BUG: MAX_LOCKDEP_CHAIN_HLOCKS too low" \ > > -e "BUG: MAX_STACK_TRACE_ENTRIES too low" > > } > > > > @@ -4356,7 +4356,7 @@ _check_dmesg() > > local filter=${1:-_check_dmesg_filter} > > > > _dmesg_since_test_start | $filter >$seqres.dmesg > > - egrep -q -e "kernel BUG at" \ > > + grep -E -q -e "kernel BUG at" \ > > -e "WARNING:" \ > > -e "\bBUG:" \ > > -e "Oops:" \ > > diff --git a/common/repair b/common/repair > > index 463ef9db..8945d002 100644 > > --- a/common/repair > > +++ b/common/repair > > @@ -105,7 +105,7 @@ _filter_repair_lostblocks() { > > > > _filter_dd() > > { > > - fgrep -v records # lose records in/out lines > > + grep -F -v records # lose records in/out lines > > } > > > > # do some controlled corrupting & ensure repair recovers us > > diff --git a/common/xfs b/common/xfs > > index 9f84dffb..4c6374ed 100644 > > --- a/common/xfs > > +++ b/common/xfs > > @@ -103,7 +103,7 @@ _scratch_find_xfs_min_logblocks() > > # try again without MKFS_OPTIONS because that's what _scratch_do_mkfs > > # will do if we pass in the log size option. > > if [ $mkfs_status -ne 0 ] && > > - ! egrep -q '(log size.*too small, minimum|external log device.*too small, must be)' $tmp.mkfserr; then > > + ! grep -E -q '(log size.*too small, minimum|external log device.*too small, must be)' $tmp.mkfserr; then > > eval "$mkfs_cmd $extra_mkfs_options $SCRATCH_DEV" \ > > 2>$tmp.mkfserr 1>$tmp.mkfsstd > > mkfs_status=$? > > @@ -181,7 +181,7 @@ _xfs_get_file_block_size() > > { > > local path="$1" > > > > - if ! ($XFS_IO_PROG -c "stat -v" "$path" 2>&1 | egrep -q '(rt-inherit|realtime)'); then > > + if ! ($XFS_IO_PROG -c "stat -v" "$path" 2>&1 | grep -E -q '(rt-inherit|realtime)'); then > > _get_block_size "$path" > > return > > fi > > @@ -966,8 +966,8 @@ _scratch_xfs_set_metadata_field() > > done > > > > local wr_cmd="write" > > - _scratch_xfs_db -x -c "help write" | egrep -q "(-c|-d)" && value="-- ${value}" > > - _scratch_xfs_db -x -c "help write" | egrep -q "(-d)" && wr_cmd="${wr_cmd} -d" > > + _scratch_xfs_db -x -c "help write" | grep -E -q "(-c|-d)" && value="-- ${value}" > > + _scratch_xfs_db -x -c "help write" | grep -E -q "(-d)" && wr_cmd="${wr_cmd} -d" > > _scratch_xfs_db -x "${cmds[@]}" -c "${wr_cmd} ${key} ${value}" > > } > > > > @@ -1107,8 +1107,8 @@ _force_xfsv4_mount_options() > > local pquota=0 > > > > # Can't have group and project quotas in XFS v4 > > - echo "$MOUNT_OPTIONS" | egrep -q "(gquota|grpquota|grpjquota=|gqnoenforce)" && gquota=1 > > - echo "$MOUNT_OPTIONS" | egrep -q "(\bpquota|prjquota|pqnoenforce)" && pquota=1 > > + echo "$MOUNT_OPTIONS" | grep -E -q "(gquota|grpquota|grpjquota=|gqnoenforce)" && gquota=1 > > + echo "$MOUNT_OPTIONS" | grep -E -q "(\bpquota|prjquota|pqnoenforce)" && pquota=1 > > > > if [ $gquota -gt 0 ] && [ $pquota -gt 0 ]; then > > export MOUNT_OPTIONS=$(echo $MOUNT_OPTIONS \ > > diff --git a/tests/btrfs/011 b/tests/btrfs/011 > > index 0665e126..6c3d037f 100755 > > --- a/tests/btrfs/011 > > +++ b/tests/btrfs/011 > > @@ -133,7 +133,7 @@ workout() > > _run_btrfs_util_prog filesystem show -m $SCRATCH_MNT > > > > # Skip -r test for configs without mirror OR replace cancel > > - if echo $mkfs_options | egrep -qv "raid1|raid5|raid6|raid10" || \ > > + if echo $mkfs_options | grep -E -qv "raid1|raid5|raid6|raid10" || \ > > [ "${with_cancel}Q" = "cancelQ" ]; then > > _scratch_unmount > /dev/null 2>&1 > > _scratch_dev_pool_put > > diff --git a/tests/btrfs/100 b/tests/btrfs/100 > > index 9986a06e..410e83ba 100755 > > --- a/tests/btrfs/100 > > +++ b/tests/btrfs/100 > > @@ -37,7 +37,7 @@ _run_btrfs_util_prog filesystem show -m $SCRATCH_MNT > > $BTRFS_UTIL_PROG filesystem show -m $SCRATCH_MNT | _filter_btrfs_filesystem_show > > > > error_devid=`$BTRFS_UTIL_PROG filesystem show -m $SCRATCH_MNT |\ > > - egrep $DMERROR_DEV | $AWK_PROG '{print $2}'` > > + grep -E $DMERROR_DEV | $AWK_PROG '{print $2}'` > > > > snapshot_cmd="$BTRFS_UTIL_PROG subvolume snapshot -r $SCRATCH_MNT" > > snapshot_cmd="$snapshot_cmd $SCRATCH_MNT/snap_\`date +'%H_%M_%S_%N'\`" > > diff --git a/tests/btrfs/101 b/tests/btrfs/101 > > index f0436f9f..e8ed8c5c 100755 > > --- a/tests/btrfs/101 > > +++ b/tests/btrfs/101 > > @@ -38,7 +38,7 @@ _run_btrfs_util_prog filesystem show -m $SCRATCH_MNT > > $BTRFS_UTIL_PROG filesystem show -m $SCRATCH_MNT | _filter_btrfs_filesystem_show > > > > error_devid=`$BTRFS_UTIL_PROG filesystem show -m $SCRATCH_MNT |\ > > - egrep $DMERROR_DEV | $AWK_PROG '{print $2}'` > > + grep -E $DMERROR_DEV | $AWK_PROG '{print $2}'` > > > > snapshot_cmd="$BTRFS_UTIL_PROG subvolume snapshot -r $SCRATCH_MNT" > > snapshot_cmd="$snapshot_cmd $SCRATCH_MNT/snap_\`date +'%H_%M_%S_%N'\`" > > diff --git a/tests/btrfs/187 b/tests/btrfs/187 > > index 574636a6..d3cf05a1 100755 > > --- a/tests/btrfs/187 > > +++ b/tests/btrfs/187 > > @@ -219,7 +219,7 @@ wait $balance_pid > > # BTRFS error (device sdc): parent transid verify failed on 32243712 wanted 24 \ > > # found 27 > > # > > -_dmesg_since_test_start | egrep -e '\bBTRFS error \(device .*?\):' > > +_dmesg_since_test_start | grep -E -e '\bBTRFS error \(device .*?\):' > > > > status=0 > > exit > > diff --git a/tests/btrfs/252 b/tests/btrfs/252 > > index 65ebe571..8b4809b7 100755 > > --- a/tests/btrfs/252 > > +++ b/tests/btrfs/252 > > @@ -180,7 +180,7 @@ for i in "${!snapshots[@]}"; do > > # case, so we don't have a mismatch with the golden output in case we > > # run with a non default $LOAD_FACTOR (default is 1). We only want the > > # mismatch with the golden output in case there's a checksum failure. > > - $FSSUM_PROG -r "$snap_csum" "$snap_copy" | egrep -v '^OK$' > > + $FSSUM_PROG -r "$snap_csum" "$snap_copy" | grep -E -v '^OK$' > > done > > > > echo "Silence is golden" > > diff --git a/tests/ext4/006 b/tests/ext4/006 > > index 48ed6bee..8792167b 100755 > > --- a/tests/ext4/006 > > +++ b/tests/ext4/006 > > @@ -130,7 +130,7 @@ cat "$ROUND2_LOG" >> $seqres.full > > echo "++ check fs (2)" >> $seqres.full > > _check_scratch_fs >> $seqres.full 2>&1 > > > > -egrep -q '(did not fix|makes no progress)' $seqres.full && echo "e2fsck failed" | tee -a $seqres.full > > +grep -E -q '(did not fix|makes no progress)' $seqres.full && echo "e2fsck failed" | tee -a $seqres.full > > if [ "$(wc -l < "$ROUND2_LOG")" -ne 8 ]; then > > echo "e2fsck did not fix everything" | tee -a $seqres.full > > fi > > diff --git a/tests/generic/164 b/tests/generic/164 > > index 56c05e37..8ab71c72 100755 > > --- a/tests/generic/164 > > +++ b/tests/generic/164 > > @@ -50,7 +50,7 @@ _cp_reflink $testdir/file1 $testdir/file3 > > _scratch_cycle_mount > > > > fbytes() { > > - egrep -v '(61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61|62 62 62 62 62 62 62 62 62 62 62 62 62 62 62 62)' > > + grep -E -v '(61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61|62 62 62 62 62 62 62 62 62 62 62 62 62 62 62 62)' > > } > > > > reader() { > > diff --git a/tests/generic/165 b/tests/generic/165 > > index bc24bcab..6deb6623 100755 > > --- a/tests/generic/165 > > +++ b/tests/generic/165 > > @@ -51,7 +51,7 @@ _cp_reflink $testdir/file1 $testdir/file3 > > _scratch_cycle_mount > > > > fbytes() { > > - egrep -v '(61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61|62 62 62 62 62 62 62 62 62 62 62 62 62 62 62 62)' > > + grep -E -v '(61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61|62 62 62 62 62 62 62 62 62 62 62 62 62 62 62 62)' > > } > > > > reader() { > > diff --git a/tests/generic/454 b/tests/generic/454 > > index 133e2e9d..3c9b39d0 100755 > > --- a/tests/generic/454 > > +++ b/tests/generic/454 > > @@ -168,7 +168,7 @@ testf "combmark_\xe1\x80\x9c\xe1\x80\xad\xe1\x80\xaf.txt" "combining marks" > > testf "combmark_\xe1\x80\x9c\xe1\x80\xaf\xe1\x80\xad.txt" "combining marks" > > > > echo "Uniqueness of keys?" > > -crazy_keys="$(_getfattr --absolute-names -d "${testfile}" | egrep -c '(french_|chinese_|greek_|arabic_|urk)')" > > +crazy_keys="$(_getfattr --absolute-names -d "${testfile}" | grep -E -c '(french_|chinese_|greek_|arabic_|urk)')" > > expected_keys=11 > > test "${crazy_keys}" -ne "${expected_keys}" && echo "Expected ${expected_keys} keys, saw ${crazy_keys}." > > > > diff --git a/tests/generic/670 b/tests/generic/670 > > index 4a895d90..67de1674 100755 > > --- a/tests/generic/670 > > +++ b/tests/generic/670 > > @@ -43,7 +43,7 @@ fbytes() { > > # Different with generic/164,165, mread copies data from mmapped area > > # one-byte-at-a-time, which may cause races during reflink_range(). > > # So the result of _mread_range() may be a mix of 61 and 62. > > - egrep -v '((61|62) ){15}(61|62)' > > + grep -E -v '((61|62) ){15}(61|62)' > > } > > > > reader() { > > diff --git a/tests/xfs/008 b/tests/xfs/008 > > index a53f6c92..e7d6153b 100755 > > --- a/tests/xfs/008 > > +++ b/tests/xfs/008 > > @@ -46,7 +46,7 @@ _do_test() > > echo "holes is in range" > > else > > # quick check - how many holes did we get? > > - count=`xfs_bmap $out | egrep -c ': hole'` > > + count=`xfs_bmap $out | grep -E -c ': hole'` > > # blocks can end up adjacent, therefore number of holes varies > > _within_tolerance "holes" $count $_holes 10% -v > > fi > > diff --git a/tests/xfs/012 b/tests/xfs/012 > > index 5ebc9058..e0dccc4e 100755 > > --- a/tests/xfs/012 > > +++ b/tests/xfs/012 > > @@ -50,7 +50,7 @@ _do_test() > > if [ $failed -eq 0 ] > > then > > # quick check - how many holes did we get? > > - count=`xfs_bmap $out | egrep -c ': hole'` > > + count=`xfs_bmap $out | grep -E -c ': hole'` > > echo " $count hole(s) detected" > > # and how big was the file? > > _filesize $out > > diff --git a/tests/xfs/033 b/tests/xfs/033 > > index d47da0d6..ef5dc4fa 100755 > > --- a/tests/xfs/033 > > +++ b/tests/xfs/033 > > @@ -45,7 +45,7 @@ _check_root_inos() > > # > > _filter_bad_ids() > > { > > - egrep -v 'bad user id 0xffffffff|bad group id 0xffffffff' > > + grep -E -v 'bad user id 0xffffffff|bad group id 0xffffffff' > > } > > > > # real QA test starts here > > diff --git a/tests/xfs/064 b/tests/xfs/064 > > index a81b226b..f67c29fd 100755 > > --- a/tests/xfs/064 > > +++ b/tests/xfs/064 > > @@ -31,7 +31,7 @@ _ls_size_filter() > > # Filter out the housekeeping files of xfsrestore > > # > > $AWK_PROG 'NF == 9 { print $5, $9 }' |\ > > - egrep -v 'dumpdir|housekeeping|dirattr|dirextattr|namreg|state|tree' > > + grep -E -v 'dumpdir|housekeeping|dirattr|dirextattr|namreg|state|tree' > > } > > > > # real QA test starts here > > @@ -48,7 +48,7 @@ while [ $i -le 9 ]; do > > if [ $i -gt 0 ]; then > > sleep 2 > > _modify_level $i > > - fi > > + fi > > > > _stable_fs > > sleep 2 > > diff --git a/tests/xfs/065 b/tests/xfs/065 > > index 8485dee6..819d385e 100755 > > --- a/tests/xfs/065 > > +++ b/tests/xfs/065 > > @@ -37,7 +37,7 @@ _list_dir() > > find $__dir -exec $here/src/lstat64 -t {} \; |\ > > sed -e 's/.*dumpdir/dumpdir/' -e '/^dumpdir /d' |\ > > sed -e 's/.*restoredir/restoredir/' -e '/^restoredir /d' |\ > > - egrep -v 'housekeeping|dirattr|dirextattr|namreg|state|tree' |\ > > + grep -E -v 'housekeeping|dirattr|dirextattr|namreg|state|tree' |\ > > awk '$3 ~ /^d/ { $2 = "XXX" } {print}' |\ > > LC_COLLATE=POSIX sort > > } > > diff --git a/tests/xfs/083 b/tests/xfs/083 > > index a9acc9f5..edab3b7b 100755 > > --- a/tests/xfs/083 > > +++ b/tests/xfs/083 > > @@ -145,7 +145,7 @@ cat "$ROUND2_LOG" >> $seqres.full > > echo "++ check fs (2)" >> $seqres.full > > _repair_scratch_fs >> $seqres.full 2>&1 > > > > -egrep -q '(did not fix|makes no progress)' $seqres.full && echo "xfs_repair failed" | tee -a $seqres.full > > +grep -E -q '(did not fix|makes no progress)' $seqres.full && echo "xfs_repair failed" | tee -a $seqres.full > > if [ "$(wc -l < "$ROUND2_LOG")" -ne 8 ]; then > > echo "xfs_repair did not fix everything" | tee -a $seqres.full > > fi > > diff --git a/tests/xfs/122 b/tests/xfs/122 > > index 18748e67..91083d60 100755 > > --- a/tests/xfs/122 > > +++ b/tests/xfs/122 > > @@ -182,8 +182,8 @@ echo 'int main(int argc, char *argv[]) {' >>$cprog > > # > > cat /usr/include/xfs/xfs*.h | indent |\ > > _attribute_filter |\ > > -egrep '(} *xfs_.*_t|^struct xfs_[a-z0-9_]*$)' |\ > > -egrep -v -f $tmp.ignore |\ > > +grep -E '(} *xfs_.*_t|^struct xfs_[a-z0-9_]*$)' |\ > > +grep -E -v -f $tmp.ignore |\ > > sed -e 's/^.*}[[:space:]]*//g' -e 's/;.*$//g' -e 's/_t, /_t\n/g' |\ > > sort | uniq |\ > > awk '{printf("printf(\"sizeof(%s) = %%zu\\n\", sizeof(%s));\n", $0, $0);}' |\ > > diff --git a/tests/xfs/138 b/tests/xfs/138 > > index 966ac03a..c49d2d9e 100755 > > --- a/tests/xfs/138 > > +++ b/tests/xfs/138 > > @@ -33,7 +33,7 @@ echo "Test with interactive" > > (echo "sb 0"; sleep 0.5; > > echo "p magicnum"; sleep 0.5; > > echo "source $tmp.a"; sleep 0.5; > > - echo "p magicnum"; sleep 0.5) | _scratch_xfs_db 2>&1 | sed -e 's/xfs_db> //g' -e 's/0x58465342/XFS_MAGIC/g' | egrep '(This is file|magicnum =)' > > + echo "p magicnum"; sleep 0.5) | _scratch_xfs_db 2>&1 | sed -e 's/xfs_db> //g' -e 's/0x58465342/XFS_MAGIC/g' | grep -E '(This is file|magicnum =)' > > > > # success, all done > > status=0 > > diff --git a/tests/xfs/185 b/tests/xfs/185 > > index f0e87642..73b21092 100755 > > --- a/tests/xfs/185 > > +++ b/tests/xfs/185 > > @@ -108,7 +108,7 @@ expected_end="$(( (alloc_rtx * rtextsize - 1) / 512 ))" > > # file_offset file_end physical_offset physical_end > > rtfile_exts() { > > $XFS_IO_PROG -c 'bmap -elp' $rtfile | \ > > - egrep -v '(^/|EXT:|hole)' | \ > > + grep -E -v '(^/|EXT:|hole)' | \ > > tr ':.[]' ' ' | \ > > while read junk foff fend physoff physend junk; do > > echo "$foff $fend $physoff $physend" > > diff --git a/tests/xfs/186 b/tests/xfs/186 > > index b54fcf26..f44158e3 100755 > > --- a/tests/xfs/186 > > +++ b/tests/xfs/186 > > @@ -55,8 +55,8 @@ _filter_inode() > > { > > tee -a $seqres.full | \ > > sed -e "s/core.forkoff/forkoff/g" | \ > > - egrep '^u.sfdir2|^u.sfdir3|^a.sfattr|forkoff' | \ > > - egrep -v 'inumber|parent' | \ > > + grep -E '^u.sfdir2|^u.sfdir3|^a.sfattr|forkoff' | \ > > + grep -E -v 'inumber|parent' | \ > > sed -e s/sfdir3/sfdir2/g | \ > > grep -v filetype > > } > > diff --git a/tests/xfs/293 b/tests/xfs/293 > > index 20f8c486..7a17eb81 100755 > > --- a/tests/xfs/293 > > +++ b/tests/xfs/293 > > @@ -33,7 +33,7 @@ esac > > _require_command "$(type -P $CAT)" $CAT > > > > for COMMAND in `$XFS_IO_PROG -c help | awk '{print $1}' | grep -v "^Use"`; do > > - $CAT "$MANPAGE" | egrep -q "^\.B.*$COMMAND" || \ > > + $CAT "$MANPAGE" | grep -E -q "^\.B.*$COMMAND" || \ > > echo "$COMMAND not documented in the xfs_io manpage" > > done > > > > diff --git a/tests/xfs/330 b/tests/xfs/330 > > index 40be4c46..5a82a1fd 100755 > > --- a/tests/xfs/330 > > +++ b/tests/xfs/330 > > @@ -26,7 +26,7 @@ _require_nobody > > > > do_repquota() > > { > > - repquota $SCRATCH_MNT | egrep '^(fsgqa|root|nobody)' | sort -r > > + repquota $SCRATCH_MNT | grep -E '^(fsgqa|root|nobody)' | sort -r > > } > > > > rm -f "$seqres.full" > > diff --git a/tests/xfs/422 b/tests/xfs/422 > > index fdbb8bf1..f3c63e8d 100755 > > --- a/tests/xfs/422 > > +++ b/tests/xfs/422 > > @@ -73,7 +73,7 @@ cpus=$(( $($here/src/feature -o) * 4 * LOAD_FACTOR)) > > > > echo "Concurrent repair" > > filter_output() { > > - egrep -v '(Device or resource busy|Invalid argument)' > > + grep -E -v '(Device or resource busy|Invalid argument)' > > } > > freeze_loop() { > > end="$1" > > diff --git a/tests/xfs/499 b/tests/xfs/499 > > index b5597708..9672f95d 100755 > > --- a/tests/xfs/499 > > +++ b/tests/xfs/499 > > @@ -44,7 +44,7 @@ struct ftrace_chk { > > char *str; > > } syms[] = { > > ENDL > > -egrep '(__print_flags|__print_symbolic)' $ftrace_dir*/*/format | \ > > +grep -E '(__print_flags|__print_symbolic)' $ftrace_dir*/*/format | \ > > sed -f $sedprog | grep '^{' | sort | uniq >> $cprog > > cat >> $cprog << ENDL > > }; > > diff --git a/tests/xfs/505 b/tests/xfs/505 > > index 71fb6e9d..0601b1a8 100755 > > --- a/tests/xfs/505 > > +++ b/tests/xfs/505 > > @@ -29,7 +29,7 @@ esac > > _require_command "$(type -P $CAT)" $CAT > > > > for COMMAND in `$XFS_SPACEMAN_PROG -c help $TEST_DIR | awk '{print $1}' | grep -v "^Use"`; do > > - $CAT "$MANPAGE" | egrep -q "^\.B.*$COMMAND" || \ > > + $CAT "$MANPAGE" | grep -E -q "^\.B.*$COMMAND" || \ > > echo "$COMMAND not documented in the xfs_spaceman manpage" > > done > > > > diff --git a/tests/xfs/514 b/tests/xfs/514 > > index cf5588f2..94f98398 100755 > > --- a/tests/xfs/514 > > +++ b/tests/xfs/514 > > @@ -41,7 +41,7 @@ truncate -s 128m $file > > $MKFS_XFS_PROG $file >> /dev/null > > > > for COMMAND in `$XFS_DB_PROG -x -c help $file | awk '{print $1}' | grep -v "^Use"`; do > > - $CAT "$MANPAGE" | egrep -q "^\.B.*$COMMAND" || \ > > + $CAT "$MANPAGE" | grep -E -q "^\.B.*$COMMAND" || \ > > echo "$COMMAND not documented in the xfs_db manpage" > > done > > > > diff --git a/tests/xfs/515 b/tests/xfs/515 > > index 2d7bbb35..adb2bd6f 100755 > > --- a/tests/xfs/515 > > +++ b/tests/xfs/515 > > @@ -37,7 +37,7 @@ esac > > _require_command "$(type -P $CAT)" $CAT > > > > for COMMAND in `$XFS_QUOTA_PROG -x -c help $file | awk '{print $1}' | grep -v "^Use"`; do > > - $CAT "$MANPAGE" | egrep -q "^\.B.*$COMMAND" || \ > > + $CAT "$MANPAGE" | grep -E -q "^\.B.*$COMMAND" || \ > > echo "$COMMAND not documented in the xfs_quota manpage" > > done > > > > diff --git a/tests/xfs/517 b/tests/xfs/517 > > index 6877af13..99fc89b0 100755 > > --- a/tests/xfs/517 > > +++ b/tests/xfs/517 > > @@ -70,7 +70,7 @@ cpus=$(( $(src/feature -o) * 4 * LOAD_FACTOR)) > > > > echo "Concurrent fsmap and freeze" > > filter_output() { > > - egrep -v '(Device or resource busy|Invalid argument)' > > + grep -E -v '(Device or resource busy|Invalid argument)' > > } > > freeze_loop() { > > end="$1" > > diff --git a/tests/xfs/520 b/tests/xfs/520 > > index 2fceb07c..dd6d845e 100755 > > --- a/tests/xfs/520 > > +++ b/tests/xfs/520 > > @@ -52,7 +52,7 @@ force_crafted_metadata() { > > fi > > > > _dmesg_since_test_start | tac | sed -ne "0,\#${kmsg}#p" | tac | \ > > - egrep -q 'Metadata corruption detected at' && hasmsg=1 > > + grep -E -q 'Metadata corruption detected at' && hasmsg=1 > > > > _scratch_unmount > /dev/null 2>&1 > > [ $mounted -eq 0 -o $hasmsg -eq 1 ] || \ > > diff --git a/tests/xfs/530 b/tests/xfs/530 > > index 9c6f44d7..c960738d 100755 > > --- a/tests/xfs/530 > > +++ b/tests/xfs/530 > > @@ -73,7 +73,7 @@ _try_scratch_mount || _notrun "Couldn't mount fs with synthetic rt volume" > > formatted_blksz="$(_get_block_size $SCRATCH_MNT)" > > test "$formatted_blksz" -ne "$dbsize" && \ > > _notrun "Tried to format with $dbsize blocksize, got $formatted_blksz." > > -$XFS_INFO_PROG $SCRATCH_MNT | egrep -q 'realtime.*blocks=0' && \ > > +$XFS_INFO_PROG $SCRATCH_MNT | grep -E -q 'realtime.*blocks=0' && \ > > _notrun "Filesystem should have a realtime volume" > > > > echo "Consume free space" > > diff --git a/tests/xfs/539 b/tests/xfs/539 > > index 77b44c89..778dce85 100755 > > --- a/tests/xfs/539 > > +++ b/tests/xfs/539 > > @@ -36,7 +36,7 @@ dmesg_since_test_tag() > > > > check_dmesg_for_since_tag() > > { > > - dmesg_since_test_tag | egrep -q "$1" > > + dmesg_since_test_tag | grep -E -q "$1" > > } > > > > echo "Silence is golden." > > -- > > 2.31.1 > > > ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 1/2] egrep, fgrep: deprecated 2022-09-15 5:27 ` Murphy Zhou @ 2022-09-15 6:59 ` Zorro Lang 0 siblings, 0 replies; 9+ messages in thread From: Zorro Lang @ 2022-09-15 6:59 UTC (permalink / raw) To: Murphy Zhou; +Cc: fstests On Thu, Sep 15, 2022 at 01:27:33PM +0800, Murphy Zhou wrote: > Aha, I missed that. Your patch looks fine and let's go with it. Darrick and I agree with deal with this "egrep obsolescent" problem by your patch, I'll review this patch soon, please wait a minute :) Thanks, Zorro > > Thanks~ > > On Wed, Sep 14, 2022 at 11:15 PM Zorro Lang <zlang@redhat.com> wrote: > > > > On Wed, Sep 14, 2022 at 05:06:09PM +0800, Murphy Zhou wrote: > > > Since this grep commit: > > > commit a9515624709865d480e3142fd959bccd1c9372d1 > > > Author: Paul Eggert <eggert@cs.ucla.edu> > > > Date: Sun Aug 15 10:52:13 2021 -0700 > > > > > > egrep, fgrep: now obsolete > > > > > > egrep will trigger a warning like: > > > +egrep: warning: egrep is obsolescent; using grep -E > > > > > > This will break many gold output. > > > > > > Signed-off-by: Murphy Zhou <jencce.kernel@gmail.com> > > > --- > > > > I've sent a patch for this issue, and it's been reviewed: > > https://lore.kernel.org/fstests/20220913125258.exj4iszolctiuxv2@zlang-mailbox/T/#t > > > > Welcome more review points, if you still find more problems after merging it. > > > > Thanks, > > Zorro > > > > > check | 2 +- > > > common/btrfs | 4 ++-- > > > common/dmlogwrites | 2 +- > > > common/dump | 4 ++-- > > > common/encrypt | 4 ++-- > > > common/filter | 2 +- > > > common/fuzzy | 6 +++--- > > > common/populate | 2 +- > > > common/quota | 8 ++++---- > > > common/rc | 36 ++++++++++++++++++------------------ > > > common/repair | 2 +- > > > common/xfs | 12 ++++++------ > > > tests/btrfs/011 | 2 +- > > > tests/btrfs/100 | 2 +- > > > tests/btrfs/101 | 2 +- > > > tests/btrfs/187 | 2 +- > > > tests/btrfs/252 | 2 +- > > > tests/ext4/006 | 2 +- > > > tests/generic/164 | 2 +- > > > tests/generic/165 | 2 +- > > > tests/generic/454 | 2 +- > > > tests/generic/670 | 2 +- > > > tests/xfs/008 | 2 +- > > > tests/xfs/012 | 2 +- > > > tests/xfs/033 | 2 +- > > > tests/xfs/064 | 4 ++-- > > > tests/xfs/065 | 2 +- > > > tests/xfs/083 | 2 +- > > > tests/xfs/122 | 4 ++-- > > > tests/xfs/138 | 2 +- > > > tests/xfs/185 | 2 +- > > > tests/xfs/186 | 4 ++-- > > > tests/xfs/293 | 2 +- > > > tests/xfs/330 | 2 +- > > > tests/xfs/422 | 2 +- > > > tests/xfs/499 | 2 +- > > > tests/xfs/505 | 2 +- > > > tests/xfs/514 | 2 +- > > > tests/xfs/515 | 2 +- > > > tests/xfs/517 | 2 +- > > > tests/xfs/520 | 2 +- > > > tests/xfs/530 | 2 +- > > > tests/xfs/539 | 2 +- > > > 43 files changed, 76 insertions(+), 76 deletions(-) > > > > > > diff --git a/check b/check > > > index 0b2f10ed..1a43c116 100755 > > > --- a/check > > > +++ b/check > > > @@ -389,7 +389,7 @@ if $have_test_arg; then > > > test_name=`basename $t` > > > group_file=$SRC_DIR/$test_dir/group.list > > > > > > - if egrep -q "^$test_name" $group_file; then > > > + if grep -Eq "^$test_name" $group_file; then > > > # in group file ... OK > > > echo $SRC_DIR/$test_dir/$test_name \ > > > >>$tmp.arglist > > > diff --git a/common/btrfs b/common/btrfs > > > index bd2639bf..d27d3384 100644 > > > --- a/common/btrfs > > > +++ b/common/btrfs > > > @@ -9,7 +9,7 @@ _btrfs_get_subvolid() > > > mnt=$1 > > > name=$2 > > > > > > - $BTRFS_UTIL_PROG sub list $mnt | egrep "\s$name$" | $AWK_PROG '{ print $2 }' > > > + $BTRFS_UTIL_PROG sub list $mnt | grep -E "\s$name$" | $AWK_PROG '{ print $2 }' > > > } > > > > > > # _require_btrfs_command <command> [<subcommand>|<option>] > > > @@ -183,7 +183,7 @@ _check_btrfs_filesystem() > > > > > > _require_btrfs_dev_del_by_devid() > > > { > > > - $BTRFS_UTIL_PROG device delete --help | egrep devid > /dev/null 2>&1 > > > + $BTRFS_UTIL_PROG device delete --help | grep -E devid > /dev/null 2>&1 > > > [ $? -eq 0 ] || _notrun "$BTRFS_UTIL_PROG too old "\ > > > "(must support 'btrfs device delete <devid> /<mnt>')" > > > } > > > diff --git a/common/dmlogwrites b/common/dmlogwrites > > > index 66c57e2b..9fa1c977 100644 > > > --- a/common/dmlogwrites > > > +++ b/common/dmlogwrites > > > @@ -51,7 +51,7 @@ _require_log_writes_dax_mountopt() > > > # Check options to be sure. > > > # XFS ignores dax option(or changes it to dax=never) > > > # and goes on if dev underneath does not support dax. > > > - _fs_options $LOGWRITES_DMDEV | egrep -q "dax(=always|,|$)" > > > + _fs_options $LOGWRITES_DMDEV | grep -Eq "dax(=always|,|$)" > > > ret=$? > > > _log_writes_cleanup > > > if [ $ret -ne 0 ]; then > > > diff --git a/common/dump b/common/dump > > > index 0dcc9655..8e0446d9 100644 > > > --- a/common/dump > > > +++ b/common/dump > > > @@ -128,7 +128,7 @@ _check_onl() > > > fi > > > > > > > > > - if egrep -i 'onl|ready' $tmp.status | grep -iv 'not ready' >/dev/null; then > > > + if grep -Ei 'onl|ready' $tmp.status | grep -iv 'not ready' >/dev/null; then > > > : > > > else > > > echo "ERROR: $dumptape is not online" > > > @@ -145,7 +145,7 @@ _wait_tape() > > > i=0 > > > while [ $i -lt 20 ]; do > > > echo "Checking status..." >>$seqres.full > > > - if _mt status 2>&1 | tee -a $seqres.full | egrep -i "onl|ready" >/dev/null; then > > > + if _mt status 2>&1 | tee -a $seqres.full | grep -Ei "onl|ready" >/dev/null; then > > > break; > > > else > > > sleep 1 > > > diff --git a/common/encrypt b/common/encrypt > > > index 8f3c46f6..5e3c6c4b 100644 > > > --- a/common/encrypt > > > +++ b/common/encrypt > > > @@ -49,7 +49,7 @@ _require_scratch_encryption() > > > # some older kernels and is ext4-specific anyway.) > > > mkdir $SCRATCH_MNT/tmpdir > > > if _set_encpolicy $SCRATCH_MNT/tmpdir 2>&1 >>$seqres.full | \ > > > - egrep -q 'Inappropriate ioctl for device|Operation not supported' > > > + grep -Eq 'Inappropriate ioctl for device|Operation not supported' > > > then > > > _notrun "kernel does not support $FSTYP encryption" > > > fi > > > @@ -125,7 +125,7 @@ _require_encryption_policy_support() > > > local keyspec=$(_generate_session_encryption_key) > > > fi > > > if _set_encpolicy $dir $keyspec $set_encpolicy_args \ > > > - 2>&1 >>$seqres.full | egrep -q 'Invalid argument'; then > > > + 2>&1 >>$seqres.full | grep -Eq 'Invalid argument'; then > > > _notrun "kernel does not support encryption policy: '$set_encpolicy_args'" > > > fi > > > # fscrypt allows setting policies with modes it knows about, even > > > diff --git a/common/filter b/common/filter > > > index 28dea646..6433a30e 100644 > > > --- a/common/filter > > > +++ b/common/filter > > > @@ -347,7 +347,7 @@ _filter_size_to_bytes() > > > # verbose output > > > _filter_fstrim() > > > { > > > - egrep -o "[0-9]+ bytes" | $AWK_PROG '{print $1}' > > > + grep -Eo "[0-9]+ bytes" | $AWK_PROG '{print $1}' > > > } > > > > > > # Remove the ending dot appended to mount error message, util-linux 2.30 > > > diff --git a/common/fuzzy b/common/fuzzy > > > index 809dee54..b4fda6f5 100644 > > > --- a/common/fuzzy > > > +++ b/common/fuzzy > > > @@ -91,11 +91,11 @@ __filter_xfs_db_print_fields() { > > > else > > > echo "${fuzzkey}" > > > fi > > > - done | egrep "${filter}" > > > + done | grep -E "${filter}" > > > } > > > > > > # Navigate to some part of the filesystem and print the field info. > > > -# The first argument is an egrep filter for the fields > > > +# The first argument is an grep filter for the fields > > > # The rest of the arguments are xfs_db commands to locate the metadata. > > > _scratch_xfs_list_metadata_fields() { > > > filter="$1" > > > @@ -289,7 +289,7 @@ _scratch_xfs_list_fuzz_verbs() { > > > } > > > > > > # Fuzz some of the fields of some piece of metadata > > > -# The first argument is an egrep filter for the field names > > > +# The first argument is an grep filter for the field names > > > # The second argument is the repair mode (online, offline, both) > > > # The rest of the arguments are xfs_db commands to locate the metadata. > > > # > > > diff --git a/common/populate b/common/populate > > > index 867776cd..9739ac99 100644 > > > --- a/common/populate > > > +++ b/common/populate > > > @@ -132,7 +132,7 @@ _populate_xfs_qmount_option() > > > # Inject our quota mount options > > > if echo "${MOUNT_OPTIONS}" | grep -q "${quota}"; then > > > return > > > - elif echo "${MOUNT_OPTIONS}" | egrep -q '(quota|noenforce)'; then > > > + elif echo "${MOUNT_OPTIONS}" | grep -Eq '(quota|noenforce)'; then > > > _qmount_option "${quota}" > > > else > > > export MOUNT_OPTIONS="$MOUNT_OPTIONS -o ${quota}" > > > diff --git a/common/quota b/common/quota > > > index 3a758e0f..22be3c69 100644 > > > --- a/common/quota > > > +++ b/common/quota > > > @@ -141,7 +141,7 @@ _require_nobody() > > > _cat_passwd | grep -q '^nobody' > > > [ $? -ne 0 ] && _notrun "password file does not contain user nobody." > > > > > > - _cat_group | egrep -q '^no(body|group)' > > > + _cat_group | grep -Eq '^no(body|group)' > > > [ $? -ne 0 ] && _notrun "group file does not contain nobody/nogroup." > > > } > > > > > > @@ -192,7 +192,7 @@ _choose_uid() > > > > > > _choose_gid() > > > { > > > - _cat_group | egrep '^no(body|group)' | perl -ne '@a = split(/:/); END { printf "id=%d name=%s\n", $a[2],$a[0] }' > > > + _cat_group | grep -E '^no(body|group)' | perl -ne '@a = split(/:/); END { printf "id=%d name=%s\n", $a[2],$a[0] }' > > > } > > > > > > _choose_prid() > > > @@ -323,12 +323,12 @@ _check_quota_usage() > > > > > > # Report the block usage of root, $qa_user, and nobody > > > _report_quota_blocks() { > > > - repquota $1 | egrep "^($qa_user|root|nobody)" | awk '{print $1, $3, $4, $5}' | sort -r > > > + repquota $1 | grep -E "^($qa_user|root|nobody)" | awk '{print $1, $3, $4, $5}' | sort -r > > > } > > > > > > # Report the inode usage of root, $qa_user, and nobody > > > _report_quota_inodes() { > > > - repquota $1 | egrep "^($qa_user|root|nobody)" | awk '{print $1, $6, $7, $8}' | sort -r > > > + repquota $1 | grep -E "^($qa_user|root|nobody)" | awk '{print $1, $6, $7, $8}' | sort -r > > > } > > > > > > # Determine which type of quota we're using > > > diff --git a/common/rc b/common/rc > > > index 197c9415..da2e7279 100644 > > > --- a/common/rc > > > +++ b/common/rc > > > @@ -113,7 +113,7 @@ _get_hugepagesize() > > > { > > > local hugepgsz=$(awk '/Hugepagesize/ {print $2}' /proc/meminfo) > > > # Call _notrun if $hugepgsz is not a number > > > - echo "$hugepgsz" | egrep -q ^[0-9]+$ || \ > > > + echo "$hugepgsz" | grep -E -q ^[0-9]+$ || \ > > > _notrun "Cannot get the value of Hugepagesize" > > > echo $((hugepgsz * 1024)) > > > } > > > @@ -1080,7 +1080,7 @@ _scratch_mkfs_sized() > > > case $FSTYP in > > > xfs) > > > # don't override MKFS_OPTIONS that set a block size. > > > - echo $MKFS_OPTIONS |egrep -q "b?size=" > > > + echo $MKFS_OPTIONS |grep -E -q "b?size=" > > > if [ $? -eq 0 ]; then > > > _scratch_mkfs_xfs -d size=$fssize $rt_ops > > > else > > > @@ -1165,13 +1165,13 @@ _scratch_mkfs_geom() > > > > > > case $FSTYP in > > > xfs) > > > - if echo "$MKFS_OPTIONS" | egrep -q "b?size="; then > > > + if echo "$MKFS_OPTIONS" | grep -E -q "b?size="; then > > > MKFS_OPTIONS=$(echo "$MKFS_OPTIONS" | sed -r "s/(b?size=)[0-9]+k?/\1$blocksize/") > > > else > > > MKFS_OPTIONS+=" -b size=$blocksize" > > > fi > > > > > > - if echo "$MKFS_OPTIONS" | egrep -q "(su|sunit|sw|swidth)="; then > > > + if echo "$MKFS_OPTIONS" | grep -E -q "(su|sunit|sw|swidth)="; then > > > MKFS_OPTIONS=$(echo "$MKFS_OPTIONS" | sed -r \ > > > -e "s/(su|sunit)=[0-9kmg]+/su=$sunit_bytes/" \ > > > -e "s/(sw|swidth)=[0-9kmg]+/sw=$swidth_mult/") > > > @@ -1673,7 +1673,7 @@ _require_scratch_nocheck() > > > { > > > case "$FSTYP" in > > > glusterfs) > > > - echo $SCRATCH_DEV | egrep -q ":/?" > /dev/null 2>&1 > > > + echo $SCRATCH_DEV | grep -E -q ":/?" > /dev/null 2>&1 > > > if [ -z "$SCRATCH_DEV" -o "$?" != "0" ]; then > > > _notrun "this test requires a valid \$SCRATCH_DEV" > > > fi > > > @@ -1873,7 +1873,7 @@ _require_test() > > > { > > > case "$FSTYP" in > > > glusterfs) > > > - echo $TEST_DEV | egrep -q ":/?" > /dev/null 2>&1 > > > + echo $TEST_DEV | grep -E -q ":/?" > /dev/null 2>&1 > > > if [ -z "$TEST_DEV" -o "$?" != "0" ]; then > > > _notrun "this test requires a valid \$TEST_DEV" > > > fi > > > @@ -2140,7 +2140,7 @@ __scratch_uses_fsdax() > > > { > > > local ops=$(_normalize_mount_options "$MOUNT_OPTIONS") > > > > > > - echo $ops | egrep -qw "dax(=always| |$)" && return 0 > > > + echo $ops | grep -E -qw "dax(=always| |$)" && return 0 > > > return 1 > > > } > > > > > > @@ -2601,7 +2601,7 @@ _require_xfs_io_command() > > > # Test xfs_io chattr support AND > > > # filesystem FS_IOC_FSSETXATTR support > > > # 'tPnE' flags are only valid for a directory so check them on a directory. > > > - if echo "$param" | egrep -q 't|P|n|E'; then > > > + if echo "$param" | grep -E -q 't|P|n|E'; then > > > testio=`$XFS_IO_PROG -F -c "chattr +$param" $testdir 2>&1` > > > attr_info=`$XFS_IO_PROG -F -r -c "lsattr" $testdir | awk '{print $1}'` > > > $XFS_IO_PROG -F -r -c "chattr -$param" $testdir 2>&1 > > > @@ -2659,7 +2659,7 @@ _require_xfs_io_command() > > > "-T") > > > # Check O_TMPFILE support in xfs_io, kernel and fs > > > testio=`$XFS_IO_PROG -T -c quit $TEST_DIR 2>&1` > > > - echo $testio | egrep -q "invalid option|Is a directory" && \ > > > + echo $testio | grep -E -q "invalid option|Is a directory" && \ > > > _notrun "xfs_io $command support is missing" > > > echo $testio | grep -q "Operation not supported" && \ > > > _notrun "O_TMPFILE is not supported" > > > @@ -3217,7 +3217,7 @@ _check_generic_filesystem() > > > # Filter the knowen errors the UDF Verifier reports. > > > _udf_test_known_error_filter() > > > { > > > - egrep -v "PVD 60 Error: Interchange Level: 1, Maximum Interchange Level: 0|FSD 28 Error: Interchange Level: 1, Maximum Interchange Level: 1,|PVD 72 Warning: Volume Set Identifier: \"\*IRIX UDF\",|Warning: [0-9]+ unused blocks NOT marked as unallocated." > > > + grep -E -v "PVD 60 Error: Interchange Level: 1, Maximum Interchange Level: 0|FSD 28 Error: Interchange Level: 1, Maximum Interchange Level: 1,|PVD 72 Warning: Volume Set Identifier: \"\*IRIX UDF\",|Warning: [0-9]+ unused blocks NOT marked as unallocated." > > > > > > } > > > > > > @@ -3249,9 +3249,9 @@ _check_udf_filesystem() > > > > > > rm -f $seqres.checkfs > > > sleep 1 # Due to a problem with time stamps in udf_test > > > - $here/src/udf_test $opt_arg $device | tee $seqres.checkfs | egrep "Error|Warning" | \ > > > + $here/src/udf_test $opt_arg $device | tee $seqres.checkfs | grep -E "Error|Warning" | \ > > > _udf_test_known_error_filter | \ > > > - egrep -iv "Error count:.*[0-9]+.*total occurrences:.*[0-9]+|Warning count:.*[0-9]+.*total occurrences:.*[0-9]+" && \ > > > + grep -E -iv "Error count:.*[0-9]+.*total occurrences:.*[0-9]+|Warning count:.*[0-9]+.*total occurrences:.*[0-9]+" && \ > > > echo "Warning UDF Verifier reported errors see $seqres.checkfs." && return 1 > > > return 0 > > > } > > > @@ -3782,7 +3782,7 @@ _check_scratch_dax_mountopt() > > > > > > _try_scratch_mount "-o $option" > /dev/null 2>&1 || return 1 > > > > > > - if _fs_options $SCRATCH_DEV | egrep -q "dax(=always|,|$)"; then > > > + if _fs_options $SCRATCH_DEV | grep -E -q "dax(=always|,|$)"; then > > > _scratch_unmount > > > return 0 > > > else > > > @@ -4048,9 +4048,9 @@ _exclude_mount_option() > > > shift > > > while [ $# -gt 0 ]; do > > > local pattern=$1 > > > - echo "$pattern" | egrep -q "dax(=always|$)" && \ > > > + echo "$pattern" | grep -E -q "dax(=always|$)" && \ > > > pattern="dax(=always| |$)" > > > - if echo $mnt_opts | egrep -q "$pattern"; then > > > + if echo $mnt_opts | grep -E -q "$pattern"; then > > > _notrun "mount option \"$1\" not allowed in this test" > > > fi > > > shift > > > @@ -4329,7 +4329,7 @@ _dmesg_since_test_start() > > > # _dmesg_since_test_start. > > > _check_dmesg_for() > > > { > > > - _dmesg_since_test_start | egrep -q "$1" > > > + _dmesg_since_test_start | grep -E -q "$1" > > > } > > > > > > # Default filter for dmesg scanning. > > > @@ -4338,7 +4338,7 @@ _check_dmesg_for() > > > # lockdep. > > > _check_dmesg_filter() > > > { > > > - egrep -v -e "BUG: MAX_LOCKDEP_CHAIN_HLOCKS too low" \ > > > + grep -E -v -e "BUG: MAX_LOCKDEP_CHAIN_HLOCKS too low" \ > > > -e "BUG: MAX_STACK_TRACE_ENTRIES too low" > > > } > > > > > > @@ -4356,7 +4356,7 @@ _check_dmesg() > > > local filter=${1:-_check_dmesg_filter} > > > > > > _dmesg_since_test_start | $filter >$seqres.dmesg > > > - egrep -q -e "kernel BUG at" \ > > > + grep -E -q -e "kernel BUG at" \ > > > -e "WARNING:" \ > > > -e "\bBUG:" \ > > > -e "Oops:" \ > > > diff --git a/common/repair b/common/repair > > > index 463ef9db..8945d002 100644 > > > --- a/common/repair > > > +++ b/common/repair > > > @@ -105,7 +105,7 @@ _filter_repair_lostblocks() { > > > > > > _filter_dd() > > > { > > > - fgrep -v records # lose records in/out lines > > > + grep -F -v records # lose records in/out lines > > > } > > > > > > # do some controlled corrupting & ensure repair recovers us > > > diff --git a/common/xfs b/common/xfs > > > index 9f84dffb..4c6374ed 100644 > > > --- a/common/xfs > > > +++ b/common/xfs > > > @@ -103,7 +103,7 @@ _scratch_find_xfs_min_logblocks() > > > # try again without MKFS_OPTIONS because that's what _scratch_do_mkfs > > > # will do if we pass in the log size option. > > > if [ $mkfs_status -ne 0 ] && > > > - ! egrep -q '(log size.*too small, minimum|external log device.*too small, must be)' $tmp.mkfserr; then > > > + ! grep -E -q '(log size.*too small, minimum|external log device.*too small, must be)' $tmp.mkfserr; then > > > eval "$mkfs_cmd $extra_mkfs_options $SCRATCH_DEV" \ > > > 2>$tmp.mkfserr 1>$tmp.mkfsstd > > > mkfs_status=$? > > > @@ -181,7 +181,7 @@ _xfs_get_file_block_size() > > > { > > > local path="$1" > > > > > > - if ! ($XFS_IO_PROG -c "stat -v" "$path" 2>&1 | egrep -q '(rt-inherit|realtime)'); then > > > + if ! ($XFS_IO_PROG -c "stat -v" "$path" 2>&1 | grep -E -q '(rt-inherit|realtime)'); then > > > _get_block_size "$path" > > > return > > > fi > > > @@ -966,8 +966,8 @@ _scratch_xfs_set_metadata_field() > > > done > > > > > > local wr_cmd="write" > > > - _scratch_xfs_db -x -c "help write" | egrep -q "(-c|-d)" && value="-- ${value}" > > > - _scratch_xfs_db -x -c "help write" | egrep -q "(-d)" && wr_cmd="${wr_cmd} -d" > > > + _scratch_xfs_db -x -c "help write" | grep -E -q "(-c|-d)" && value="-- ${value}" > > > + _scratch_xfs_db -x -c "help write" | grep -E -q "(-d)" && wr_cmd="${wr_cmd} -d" > > > _scratch_xfs_db -x "${cmds[@]}" -c "${wr_cmd} ${key} ${value}" > > > } > > > > > > @@ -1107,8 +1107,8 @@ _force_xfsv4_mount_options() > > > local pquota=0 > > > > > > # Can't have group and project quotas in XFS v4 > > > - echo "$MOUNT_OPTIONS" | egrep -q "(gquota|grpquota|grpjquota=|gqnoenforce)" && gquota=1 > > > - echo "$MOUNT_OPTIONS" | egrep -q "(\bpquota|prjquota|pqnoenforce)" && pquota=1 > > > + echo "$MOUNT_OPTIONS" | grep -E -q "(gquota|grpquota|grpjquota=|gqnoenforce)" && gquota=1 > > > + echo "$MOUNT_OPTIONS" | grep -E -q "(\bpquota|prjquota|pqnoenforce)" && pquota=1 > > > > > > if [ $gquota -gt 0 ] && [ $pquota -gt 0 ]; then > > > export MOUNT_OPTIONS=$(echo $MOUNT_OPTIONS \ > > > diff --git a/tests/btrfs/011 b/tests/btrfs/011 > > > index 0665e126..6c3d037f 100755 > > > --- a/tests/btrfs/011 > > > +++ b/tests/btrfs/011 > > > @@ -133,7 +133,7 @@ workout() > > > _run_btrfs_util_prog filesystem show -m $SCRATCH_MNT > > > > > > # Skip -r test for configs without mirror OR replace cancel > > > - if echo $mkfs_options | egrep -qv "raid1|raid5|raid6|raid10" || \ > > > + if echo $mkfs_options | grep -E -qv "raid1|raid5|raid6|raid10" || \ > > > [ "${with_cancel}Q" = "cancelQ" ]; then > > > _scratch_unmount > /dev/null 2>&1 > > > _scratch_dev_pool_put > > > diff --git a/tests/btrfs/100 b/tests/btrfs/100 > > > index 9986a06e..410e83ba 100755 > > > --- a/tests/btrfs/100 > > > +++ b/tests/btrfs/100 > > > @@ -37,7 +37,7 @@ _run_btrfs_util_prog filesystem show -m $SCRATCH_MNT > > > $BTRFS_UTIL_PROG filesystem show -m $SCRATCH_MNT | _filter_btrfs_filesystem_show > > > > > > error_devid=`$BTRFS_UTIL_PROG filesystem show -m $SCRATCH_MNT |\ > > > - egrep $DMERROR_DEV | $AWK_PROG '{print $2}'` > > > + grep -E $DMERROR_DEV | $AWK_PROG '{print $2}'` > > > > > > snapshot_cmd="$BTRFS_UTIL_PROG subvolume snapshot -r $SCRATCH_MNT" > > > snapshot_cmd="$snapshot_cmd $SCRATCH_MNT/snap_\`date +'%H_%M_%S_%N'\`" > > > diff --git a/tests/btrfs/101 b/tests/btrfs/101 > > > index f0436f9f..e8ed8c5c 100755 > > > --- a/tests/btrfs/101 > > > +++ b/tests/btrfs/101 > > > @@ -38,7 +38,7 @@ _run_btrfs_util_prog filesystem show -m $SCRATCH_MNT > > > $BTRFS_UTIL_PROG filesystem show -m $SCRATCH_MNT | _filter_btrfs_filesystem_show > > > > > > error_devid=`$BTRFS_UTIL_PROG filesystem show -m $SCRATCH_MNT |\ > > > - egrep $DMERROR_DEV | $AWK_PROG '{print $2}'` > > > + grep -E $DMERROR_DEV | $AWK_PROG '{print $2}'` > > > > > > snapshot_cmd="$BTRFS_UTIL_PROG subvolume snapshot -r $SCRATCH_MNT" > > > snapshot_cmd="$snapshot_cmd $SCRATCH_MNT/snap_\`date +'%H_%M_%S_%N'\`" > > > diff --git a/tests/btrfs/187 b/tests/btrfs/187 > > > index 574636a6..d3cf05a1 100755 > > > --- a/tests/btrfs/187 > > > +++ b/tests/btrfs/187 > > > @@ -219,7 +219,7 @@ wait $balance_pid > > > # BTRFS error (device sdc): parent transid verify failed on 32243712 wanted 24 \ > > > # found 27 > > > # > > > -_dmesg_since_test_start | egrep -e '\bBTRFS error \(device .*?\):' > > > +_dmesg_since_test_start | grep -E -e '\bBTRFS error \(device .*?\):' > > > > > > status=0 > > > exit > > > diff --git a/tests/btrfs/252 b/tests/btrfs/252 > > > index 65ebe571..8b4809b7 100755 > > > --- a/tests/btrfs/252 > > > +++ b/tests/btrfs/252 > > > @@ -180,7 +180,7 @@ for i in "${!snapshots[@]}"; do > > > # case, so we don't have a mismatch with the golden output in case we > > > # run with a non default $LOAD_FACTOR (default is 1). We only want the > > > # mismatch with the golden output in case there's a checksum failure. > > > - $FSSUM_PROG -r "$snap_csum" "$snap_copy" | egrep -v '^OK$' > > > + $FSSUM_PROG -r "$snap_csum" "$snap_copy" | grep -E -v '^OK$' > > > done > > > > > > echo "Silence is golden" > > > diff --git a/tests/ext4/006 b/tests/ext4/006 > > > index 48ed6bee..8792167b 100755 > > > --- a/tests/ext4/006 > > > +++ b/tests/ext4/006 > > > @@ -130,7 +130,7 @@ cat "$ROUND2_LOG" >> $seqres.full > > > echo "++ check fs (2)" >> $seqres.full > > > _check_scratch_fs >> $seqres.full 2>&1 > > > > > > -egrep -q '(did not fix|makes no progress)' $seqres.full && echo "e2fsck failed" | tee -a $seqres.full > > > +grep -E -q '(did not fix|makes no progress)' $seqres.full && echo "e2fsck failed" | tee -a $seqres.full > > > if [ "$(wc -l < "$ROUND2_LOG")" -ne 8 ]; then > > > echo "e2fsck did not fix everything" | tee -a $seqres.full > > > fi > > > diff --git a/tests/generic/164 b/tests/generic/164 > > > index 56c05e37..8ab71c72 100755 > > > --- a/tests/generic/164 > > > +++ b/tests/generic/164 > > > @@ -50,7 +50,7 @@ _cp_reflink $testdir/file1 $testdir/file3 > > > _scratch_cycle_mount > > > > > > fbytes() { > > > - egrep -v '(61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61|62 62 62 62 62 62 62 62 62 62 62 62 62 62 62 62)' > > > + grep -E -v '(61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61|62 62 62 62 62 62 62 62 62 62 62 62 62 62 62 62)' > > > } > > > > > > reader() { > > > diff --git a/tests/generic/165 b/tests/generic/165 > > > index bc24bcab..6deb6623 100755 > > > --- a/tests/generic/165 > > > +++ b/tests/generic/165 > > > @@ -51,7 +51,7 @@ _cp_reflink $testdir/file1 $testdir/file3 > > > _scratch_cycle_mount > > > > > > fbytes() { > > > - egrep -v '(61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61|62 62 62 62 62 62 62 62 62 62 62 62 62 62 62 62)' > > > + grep -E -v '(61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61|62 62 62 62 62 62 62 62 62 62 62 62 62 62 62 62)' > > > } > > > > > > reader() { > > > diff --git a/tests/generic/454 b/tests/generic/454 > > > index 133e2e9d..3c9b39d0 100755 > > > --- a/tests/generic/454 > > > +++ b/tests/generic/454 > > > @@ -168,7 +168,7 @@ testf "combmark_\xe1\x80\x9c\xe1\x80\xad\xe1\x80\xaf.txt" "combining marks" > > > testf "combmark_\xe1\x80\x9c\xe1\x80\xaf\xe1\x80\xad.txt" "combining marks" > > > > > > echo "Uniqueness of keys?" > > > -crazy_keys="$(_getfattr --absolute-names -d "${testfile}" | egrep -c '(french_|chinese_|greek_|arabic_|urk)')" > > > +crazy_keys="$(_getfattr --absolute-names -d "${testfile}" | grep -E -c '(french_|chinese_|greek_|arabic_|urk)')" > > > expected_keys=11 > > > test "${crazy_keys}" -ne "${expected_keys}" && echo "Expected ${expected_keys} keys, saw ${crazy_keys}." > > > > > > diff --git a/tests/generic/670 b/tests/generic/670 > > > index 4a895d90..67de1674 100755 > > > --- a/tests/generic/670 > > > +++ b/tests/generic/670 > > > @@ -43,7 +43,7 @@ fbytes() { > > > # Different with generic/164,165, mread copies data from mmapped area > > > # one-byte-at-a-time, which may cause races during reflink_range(). > > > # So the result of _mread_range() may be a mix of 61 and 62. > > > - egrep -v '((61|62) ){15}(61|62)' > > > + grep -E -v '((61|62) ){15}(61|62)' > > > } > > > > > > reader() { > > > diff --git a/tests/xfs/008 b/tests/xfs/008 > > > index a53f6c92..e7d6153b 100755 > > > --- a/tests/xfs/008 > > > +++ b/tests/xfs/008 > > > @@ -46,7 +46,7 @@ _do_test() > > > echo "holes is in range" > > > else > > > # quick check - how many holes did we get? > > > - count=`xfs_bmap $out | egrep -c ': hole'` > > > + count=`xfs_bmap $out | grep -E -c ': hole'` > > > # blocks can end up adjacent, therefore number of holes varies > > > _within_tolerance "holes" $count $_holes 10% -v > > > fi > > > diff --git a/tests/xfs/012 b/tests/xfs/012 > > > index 5ebc9058..e0dccc4e 100755 > > > --- a/tests/xfs/012 > > > +++ b/tests/xfs/012 > > > @@ -50,7 +50,7 @@ _do_test() > > > if [ $failed -eq 0 ] > > > then > > > # quick check - how many holes did we get? > > > - count=`xfs_bmap $out | egrep -c ': hole'` > > > + count=`xfs_bmap $out | grep -E -c ': hole'` > > > echo " $count hole(s) detected" > > > # and how big was the file? > > > _filesize $out > > > diff --git a/tests/xfs/033 b/tests/xfs/033 > > > index d47da0d6..ef5dc4fa 100755 > > > --- a/tests/xfs/033 > > > +++ b/tests/xfs/033 > > > @@ -45,7 +45,7 @@ _check_root_inos() > > > # > > > _filter_bad_ids() > > > { > > > - egrep -v 'bad user id 0xffffffff|bad group id 0xffffffff' > > > + grep -E -v 'bad user id 0xffffffff|bad group id 0xffffffff' > > > } > > > > > > # real QA test starts here > > > diff --git a/tests/xfs/064 b/tests/xfs/064 > > > index a81b226b..f67c29fd 100755 > > > --- a/tests/xfs/064 > > > +++ b/tests/xfs/064 > > > @@ -31,7 +31,7 @@ _ls_size_filter() > > > # Filter out the housekeeping files of xfsrestore > > > # > > > $AWK_PROG 'NF == 9 { print $5, $9 }' |\ > > > - egrep -v 'dumpdir|housekeeping|dirattr|dirextattr|namreg|state|tree' > > > + grep -E -v 'dumpdir|housekeeping|dirattr|dirextattr|namreg|state|tree' > > > } > > > > > > # real QA test starts here > > > @@ -48,7 +48,7 @@ while [ $i -le 9 ]; do > > > if [ $i -gt 0 ]; then > > > sleep 2 > > > _modify_level $i > > > - fi > > > + fi > > > > > > _stable_fs > > > sleep 2 > > > diff --git a/tests/xfs/065 b/tests/xfs/065 > > > index 8485dee6..819d385e 100755 > > > --- a/tests/xfs/065 > > > +++ b/tests/xfs/065 > > > @@ -37,7 +37,7 @@ _list_dir() > > > find $__dir -exec $here/src/lstat64 -t {} \; |\ > > > sed -e 's/.*dumpdir/dumpdir/' -e '/^dumpdir /d' |\ > > > sed -e 's/.*restoredir/restoredir/' -e '/^restoredir /d' |\ > > > - egrep -v 'housekeeping|dirattr|dirextattr|namreg|state|tree' |\ > > > + grep -E -v 'housekeeping|dirattr|dirextattr|namreg|state|tree' |\ > > > awk '$3 ~ /^d/ { $2 = "XXX" } {print}' |\ > > > LC_COLLATE=POSIX sort > > > } > > > diff --git a/tests/xfs/083 b/tests/xfs/083 > > > index a9acc9f5..edab3b7b 100755 > > > --- a/tests/xfs/083 > > > +++ b/tests/xfs/083 > > > @@ -145,7 +145,7 @@ cat "$ROUND2_LOG" >> $seqres.full > > > echo "++ check fs (2)" >> $seqres.full > > > _repair_scratch_fs >> $seqres.full 2>&1 > > > > > > -egrep -q '(did not fix|makes no progress)' $seqres.full && echo "xfs_repair failed" | tee -a $seqres.full > > > +grep -E -q '(did not fix|makes no progress)' $seqres.full && echo "xfs_repair failed" | tee -a $seqres.full > > > if [ "$(wc -l < "$ROUND2_LOG")" -ne 8 ]; then > > > echo "xfs_repair did not fix everything" | tee -a $seqres.full > > > fi > > > diff --git a/tests/xfs/122 b/tests/xfs/122 > > > index 18748e67..91083d60 100755 > > > --- a/tests/xfs/122 > > > +++ b/tests/xfs/122 > > > @@ -182,8 +182,8 @@ echo 'int main(int argc, char *argv[]) {' >>$cprog > > > # > > > cat /usr/include/xfs/xfs*.h | indent |\ > > > _attribute_filter |\ > > > -egrep '(} *xfs_.*_t|^struct xfs_[a-z0-9_]*$)' |\ > > > -egrep -v -f $tmp.ignore |\ > > > +grep -E '(} *xfs_.*_t|^struct xfs_[a-z0-9_]*$)' |\ > > > +grep -E -v -f $tmp.ignore |\ > > > sed -e 's/^.*}[[:space:]]*//g' -e 's/;.*$//g' -e 's/_t, /_t\n/g' |\ > > > sort | uniq |\ > > > awk '{printf("printf(\"sizeof(%s) = %%zu\\n\", sizeof(%s));\n", $0, $0);}' |\ > > > diff --git a/tests/xfs/138 b/tests/xfs/138 > > > index 966ac03a..c49d2d9e 100755 > > > --- a/tests/xfs/138 > > > +++ b/tests/xfs/138 > > > @@ -33,7 +33,7 @@ echo "Test with interactive" > > > (echo "sb 0"; sleep 0.5; > > > echo "p magicnum"; sleep 0.5; > > > echo "source $tmp.a"; sleep 0.5; > > > - echo "p magicnum"; sleep 0.5) | _scratch_xfs_db 2>&1 | sed -e 's/xfs_db> //g' -e 's/0x58465342/XFS_MAGIC/g' | egrep '(This is file|magicnum =)' > > > + echo "p magicnum"; sleep 0.5) | _scratch_xfs_db 2>&1 | sed -e 's/xfs_db> //g' -e 's/0x58465342/XFS_MAGIC/g' | grep -E '(This is file|magicnum =)' > > > > > > # success, all done > > > status=0 > > > diff --git a/tests/xfs/185 b/tests/xfs/185 > > > index f0e87642..73b21092 100755 > > > --- a/tests/xfs/185 > > > +++ b/tests/xfs/185 > > > @@ -108,7 +108,7 @@ expected_end="$(( (alloc_rtx * rtextsize - 1) / 512 ))" > > > # file_offset file_end physical_offset physical_end > > > rtfile_exts() { > > > $XFS_IO_PROG -c 'bmap -elp' $rtfile | \ > > > - egrep -v '(^/|EXT:|hole)' | \ > > > + grep -E -v '(^/|EXT:|hole)' | \ > > > tr ':.[]' ' ' | \ > > > while read junk foff fend physoff physend junk; do > > > echo "$foff $fend $physoff $physend" > > > diff --git a/tests/xfs/186 b/tests/xfs/186 > > > index b54fcf26..f44158e3 100755 > > > --- a/tests/xfs/186 > > > +++ b/tests/xfs/186 > > > @@ -55,8 +55,8 @@ _filter_inode() > > > { > > > tee -a $seqres.full | \ > > > sed -e "s/core.forkoff/forkoff/g" | \ > > > - egrep '^u.sfdir2|^u.sfdir3|^a.sfattr|forkoff' | \ > > > - egrep -v 'inumber|parent' | \ > > > + grep -E '^u.sfdir2|^u.sfdir3|^a.sfattr|forkoff' | \ > > > + grep -E -v 'inumber|parent' | \ > > > sed -e s/sfdir3/sfdir2/g | \ > > > grep -v filetype > > > } > > > diff --git a/tests/xfs/293 b/tests/xfs/293 > > > index 20f8c486..7a17eb81 100755 > > > --- a/tests/xfs/293 > > > +++ b/tests/xfs/293 > > > @@ -33,7 +33,7 @@ esac > > > _require_command "$(type -P $CAT)" $CAT > > > > > > for COMMAND in `$XFS_IO_PROG -c help | awk '{print $1}' | grep -v "^Use"`; do > > > - $CAT "$MANPAGE" | egrep -q "^\.B.*$COMMAND" || \ > > > + $CAT "$MANPAGE" | grep -E -q "^\.B.*$COMMAND" || \ > > > echo "$COMMAND not documented in the xfs_io manpage" > > > done > > > > > > diff --git a/tests/xfs/330 b/tests/xfs/330 > > > index 40be4c46..5a82a1fd 100755 > > > --- a/tests/xfs/330 > > > +++ b/tests/xfs/330 > > > @@ -26,7 +26,7 @@ _require_nobody > > > > > > do_repquota() > > > { > > > - repquota $SCRATCH_MNT | egrep '^(fsgqa|root|nobody)' | sort -r > > > + repquota $SCRATCH_MNT | grep -E '^(fsgqa|root|nobody)' | sort -r > > > } > > > > > > rm -f "$seqres.full" > > > diff --git a/tests/xfs/422 b/tests/xfs/422 > > > index fdbb8bf1..f3c63e8d 100755 > > > --- a/tests/xfs/422 > > > +++ b/tests/xfs/422 > > > @@ -73,7 +73,7 @@ cpus=$(( $($here/src/feature -o) * 4 * LOAD_FACTOR)) > > > > > > echo "Concurrent repair" > > > filter_output() { > > > - egrep -v '(Device or resource busy|Invalid argument)' > > > + grep -E -v '(Device or resource busy|Invalid argument)' > > > } > > > freeze_loop() { > > > end="$1" > > > diff --git a/tests/xfs/499 b/tests/xfs/499 > > > index b5597708..9672f95d 100755 > > > --- a/tests/xfs/499 > > > +++ b/tests/xfs/499 > > > @@ -44,7 +44,7 @@ struct ftrace_chk { > > > char *str; > > > } syms[] = { > > > ENDL > > > -egrep '(__print_flags|__print_symbolic)' $ftrace_dir*/*/format | \ > > > +grep -E '(__print_flags|__print_symbolic)' $ftrace_dir*/*/format | \ > > > sed -f $sedprog | grep '^{' | sort | uniq >> $cprog > > > cat >> $cprog << ENDL > > > }; > > > diff --git a/tests/xfs/505 b/tests/xfs/505 > > > index 71fb6e9d..0601b1a8 100755 > > > --- a/tests/xfs/505 > > > +++ b/tests/xfs/505 > > > @@ -29,7 +29,7 @@ esac > > > _require_command "$(type -P $CAT)" $CAT > > > > > > for COMMAND in `$XFS_SPACEMAN_PROG -c help $TEST_DIR | awk '{print $1}' | grep -v "^Use"`; do > > > - $CAT "$MANPAGE" | egrep -q "^\.B.*$COMMAND" || \ > > > + $CAT "$MANPAGE" | grep -E -q "^\.B.*$COMMAND" || \ > > > echo "$COMMAND not documented in the xfs_spaceman manpage" > > > done > > > > > > diff --git a/tests/xfs/514 b/tests/xfs/514 > > > index cf5588f2..94f98398 100755 > > > --- a/tests/xfs/514 > > > +++ b/tests/xfs/514 > > > @@ -41,7 +41,7 @@ truncate -s 128m $file > > > $MKFS_XFS_PROG $file >> /dev/null > > > > > > for COMMAND in `$XFS_DB_PROG -x -c help $file | awk '{print $1}' | grep -v "^Use"`; do > > > - $CAT "$MANPAGE" | egrep -q "^\.B.*$COMMAND" || \ > > > + $CAT "$MANPAGE" | grep -E -q "^\.B.*$COMMAND" || \ > > > echo "$COMMAND not documented in the xfs_db manpage" > > > done > > > > > > diff --git a/tests/xfs/515 b/tests/xfs/515 > > > index 2d7bbb35..adb2bd6f 100755 > > > --- a/tests/xfs/515 > > > +++ b/tests/xfs/515 > > > @@ -37,7 +37,7 @@ esac > > > _require_command "$(type -P $CAT)" $CAT > > > > > > for COMMAND in `$XFS_QUOTA_PROG -x -c help $file | awk '{print $1}' | grep -v "^Use"`; do > > > - $CAT "$MANPAGE" | egrep -q "^\.B.*$COMMAND" || \ > > > + $CAT "$MANPAGE" | grep -E -q "^\.B.*$COMMAND" || \ > > > echo "$COMMAND not documented in the xfs_quota manpage" > > > done > > > > > > diff --git a/tests/xfs/517 b/tests/xfs/517 > > > index 6877af13..99fc89b0 100755 > > > --- a/tests/xfs/517 > > > +++ b/tests/xfs/517 > > > @@ -70,7 +70,7 @@ cpus=$(( $(src/feature -o) * 4 * LOAD_FACTOR)) > > > > > > echo "Concurrent fsmap and freeze" > > > filter_output() { > > > - egrep -v '(Device or resource busy|Invalid argument)' > > > + grep -E -v '(Device or resource busy|Invalid argument)' > > > } > > > freeze_loop() { > > > end="$1" > > > diff --git a/tests/xfs/520 b/tests/xfs/520 > > > index 2fceb07c..dd6d845e 100755 > > > --- a/tests/xfs/520 > > > +++ b/tests/xfs/520 > > > @@ -52,7 +52,7 @@ force_crafted_metadata() { > > > fi > > > > > > _dmesg_since_test_start | tac | sed -ne "0,\#${kmsg}#p" | tac | \ > > > - egrep -q 'Metadata corruption detected at' && hasmsg=1 > > > + grep -E -q 'Metadata corruption detected at' && hasmsg=1 > > > > > > _scratch_unmount > /dev/null 2>&1 > > > [ $mounted -eq 0 -o $hasmsg -eq 1 ] || \ > > > diff --git a/tests/xfs/530 b/tests/xfs/530 > > > index 9c6f44d7..c960738d 100755 > > > --- a/tests/xfs/530 > > > +++ b/tests/xfs/530 > > > @@ -73,7 +73,7 @@ _try_scratch_mount || _notrun "Couldn't mount fs with synthetic rt volume" > > > formatted_blksz="$(_get_block_size $SCRATCH_MNT)" > > > test "$formatted_blksz" -ne "$dbsize" && \ > > > _notrun "Tried to format with $dbsize blocksize, got $formatted_blksz." > > > -$XFS_INFO_PROG $SCRATCH_MNT | egrep -q 'realtime.*blocks=0' && \ > > > +$XFS_INFO_PROG $SCRATCH_MNT | grep -E -q 'realtime.*blocks=0' && \ > > > _notrun "Filesystem should have a realtime volume" > > > > > > echo "Consume free space" > > > diff --git a/tests/xfs/539 b/tests/xfs/539 > > > index 77b44c89..778dce85 100755 > > > --- a/tests/xfs/539 > > > +++ b/tests/xfs/539 > > > @@ -36,7 +36,7 @@ dmesg_since_test_tag() > > > > > > check_dmesg_for_since_tag() > > > { > > > - dmesg_since_test_tag | egrep -q "$1" > > > + dmesg_since_test_tag | grep -E -q "$1" > > > } > > > > > > echo "Silence is golden." > > > -- > > > 2.31.1 > > > > > > ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 1/2] egrep, fgrep: deprecated 2022-09-14 9:06 [PATCH 1/2] egrep, fgrep: deprecated Murphy Zhou 2022-09-14 9:06 ` [PATCH 2/2] common/quota: fix grep pattern Murphy Zhou 2022-09-14 15:15 ` [PATCH 1/2] egrep, fgrep: deprecated Zorro Lang @ 2022-09-15 8:10 ` Zorro Lang 2022-09-20 3:17 ` Murphy Zhou 2 siblings, 1 reply; 9+ messages in thread From: Zorro Lang @ 2022-09-15 8:10 UTC (permalink / raw) To: Murphy Zhou; +Cc: fstests, Darrick J. Wong On Wed, Sep 14, 2022 at 05:06:09PM +0800, Murphy Zhou wrote: > Since this grep commit: > commit a9515624709865d480e3142fd959bccd1c9372d1 > Author: Paul Eggert <eggert@cs.ucla.edu> > Date: Sun Aug 15 10:52:13 2021 -0700 > > egrep, fgrep: now obsolete > > egrep will trigger a warning like: > +egrep: warning: egrep is obsolescent; using grep -E > > This will break many gold output. > > Signed-off-by: Murphy Zhou <jencce.kernel@gmail.com> > --- Hi, Please rebase this patch on latest fstests for-next branch, I hit below CONFLICT when I try to merge it: $ git am -3 ./20220914_jencce_kernel_egrep_fgrep_deprecated.mbx Applying: egrep, fgrep: deprecated Using index info to reconstruct a base tree... M check M common/encrypt M common/rc M common/xfs Falling back to patching base and 3-way merge... Auto-merging common/xfs Auto-merging common/rc CONFLICT (content): Merge conflict in common/rc Auto-merging common/encrypt Auto-merging check error: Failed to merge in the changes. Patch failed at 0001 egrep, fgrep: deprecated hint: Use 'git am --show-current-patch=diff' to see the failed patch When you have resolved this problem, run "git am --continue". If you prefer to skip this patch, run "git am --skip" instead. To restore the original branch and stop patching, run "git am --abort". One more tiny question below ... > check | 2 +- > common/btrfs | 4 ++-- > common/dmlogwrites | 2 +- > common/dump | 4 ++-- [snip] > # real QA test starts here > @@ -48,7 +48,7 @@ while [ $i -le 9 ]; do > if [ $i -gt 0 ]; then > sleep 2 > _modify_level $i > - fi > + fi What's this change for? Thanks, Zorro > > _stable_fs > sleep 2 > diff --git a/tests/xfs/065 b/tests/xfs/065 > index 8485dee6..819d385e 100755 > --- a/tests/xfs/065 > +++ b/tests/xfs/065 > @@ -37,7 +37,7 @@ _list_dir() > find $__dir -exec $here/src/lstat64 -t {} \; |\ > sed -e 's/.*dumpdir/dumpdir/' -e '/^dumpdir /d' |\ > sed -e 's/.*restoredir/restoredir/' -e '/^restoredir /d' |\ > - egrep -v 'housekeeping|dirattr|dirextattr|namreg|state|tree' |\ > + grep -E -v 'housekeeping|dirattr|dirextattr|namreg|state|tree' |\ > awk '$3 ~ /^d/ { $2 = "XXX" } {print}' |\ > LC_COLLATE=POSIX sort > } > diff --git a/tests/xfs/083 b/tests/xfs/083 > index a9acc9f5..edab3b7b 100755 > --- a/tests/xfs/083 > +++ b/tests/xfs/083 > @@ -145,7 +145,7 @@ cat "$ROUND2_LOG" >> $seqres.full > echo "++ check fs (2)" >> $seqres.full > _repair_scratch_fs >> $seqres.full 2>&1 > > -egrep -q '(did not fix|makes no progress)' $seqres.full && echo "xfs_repair failed" | tee -a $seqres.full > +grep -E -q '(did not fix|makes no progress)' $seqres.full && echo "xfs_repair failed" | tee -a $seqres.full > if [ "$(wc -l < "$ROUND2_LOG")" -ne 8 ]; then > echo "xfs_repair did not fix everything" | tee -a $seqres.full > fi > diff --git a/tests/xfs/122 b/tests/xfs/122 > index 18748e67..91083d60 100755 > --- a/tests/xfs/122 > +++ b/tests/xfs/122 > @@ -182,8 +182,8 @@ echo 'int main(int argc, char *argv[]) {' >>$cprog > # > cat /usr/include/xfs/xfs*.h | indent |\ > _attribute_filter |\ > -egrep '(} *xfs_.*_t|^struct xfs_[a-z0-9_]*$)' |\ > -egrep -v -f $tmp.ignore |\ > +grep -E '(} *xfs_.*_t|^struct xfs_[a-z0-9_]*$)' |\ > +grep -E -v -f $tmp.ignore |\ > sed -e 's/^.*}[[:space:]]*//g' -e 's/;.*$//g' -e 's/_t, /_t\n/g' |\ > sort | uniq |\ > awk '{printf("printf(\"sizeof(%s) = %%zu\\n\", sizeof(%s));\n", $0, $0);}' |\ > diff --git a/tests/xfs/138 b/tests/xfs/138 > index 966ac03a..c49d2d9e 100755 > --- a/tests/xfs/138 > +++ b/tests/xfs/138 > @@ -33,7 +33,7 @@ echo "Test with interactive" > (echo "sb 0"; sleep 0.5; > echo "p magicnum"; sleep 0.5; > echo "source $tmp.a"; sleep 0.5; > - echo "p magicnum"; sleep 0.5) | _scratch_xfs_db 2>&1 | sed -e 's/xfs_db> //g' -e 's/0x58465342/XFS_MAGIC/g' | egrep '(This is file|magicnum =)' > + echo "p magicnum"; sleep 0.5) | _scratch_xfs_db 2>&1 | sed -e 's/xfs_db> //g' -e 's/0x58465342/XFS_MAGIC/g' | grep -E '(This is file|magicnum =)' > > # success, all done > status=0 > diff --git a/tests/xfs/185 b/tests/xfs/185 > index f0e87642..73b21092 100755 > --- a/tests/xfs/185 > +++ b/tests/xfs/185 > @@ -108,7 +108,7 @@ expected_end="$(( (alloc_rtx * rtextsize - 1) / 512 ))" > # file_offset file_end physical_offset physical_end > rtfile_exts() { > $XFS_IO_PROG -c 'bmap -elp' $rtfile | \ > - egrep -v '(^/|EXT:|hole)' | \ > + grep -E -v '(^/|EXT:|hole)' | \ > tr ':.[]' ' ' | \ > while read junk foff fend physoff physend junk; do > echo "$foff $fend $physoff $physend" > diff --git a/tests/xfs/186 b/tests/xfs/186 > index b54fcf26..f44158e3 100755 > --- a/tests/xfs/186 > +++ b/tests/xfs/186 > @@ -55,8 +55,8 @@ _filter_inode() > { > tee -a $seqres.full | \ > sed -e "s/core.forkoff/forkoff/g" | \ > - egrep '^u.sfdir2|^u.sfdir3|^a.sfattr|forkoff' | \ > - egrep -v 'inumber|parent' | \ > + grep -E '^u.sfdir2|^u.sfdir3|^a.sfattr|forkoff' | \ > + grep -E -v 'inumber|parent' | \ > sed -e s/sfdir3/sfdir2/g | \ > grep -v filetype > } > diff --git a/tests/xfs/293 b/tests/xfs/293 > index 20f8c486..7a17eb81 100755 > --- a/tests/xfs/293 > +++ b/tests/xfs/293 > @@ -33,7 +33,7 @@ esac > _require_command "$(type -P $CAT)" $CAT > > for COMMAND in `$XFS_IO_PROG -c help | awk '{print $1}' | grep -v "^Use"`; do > - $CAT "$MANPAGE" | egrep -q "^\.B.*$COMMAND" || \ > + $CAT "$MANPAGE" | grep -E -q "^\.B.*$COMMAND" || \ > echo "$COMMAND not documented in the xfs_io manpage" > done > > diff --git a/tests/xfs/330 b/tests/xfs/330 > index 40be4c46..5a82a1fd 100755 > --- a/tests/xfs/330 > +++ b/tests/xfs/330 > @@ -26,7 +26,7 @@ _require_nobody > > do_repquota() > { > - repquota $SCRATCH_MNT | egrep '^(fsgqa|root|nobody)' | sort -r > + repquota $SCRATCH_MNT | grep -E '^(fsgqa|root|nobody)' | sort -r > } > > rm -f "$seqres.full" > diff --git a/tests/xfs/422 b/tests/xfs/422 > index fdbb8bf1..f3c63e8d 100755 > --- a/tests/xfs/422 > +++ b/tests/xfs/422 > @@ -73,7 +73,7 @@ cpus=$(( $($here/src/feature -o) * 4 * LOAD_FACTOR)) > > echo "Concurrent repair" > filter_output() { > - egrep -v '(Device or resource busy|Invalid argument)' > + grep -E -v '(Device or resource busy|Invalid argument)' > } > freeze_loop() { > end="$1" > diff --git a/tests/xfs/499 b/tests/xfs/499 > index b5597708..9672f95d 100755 > --- a/tests/xfs/499 > +++ b/tests/xfs/499 > @@ -44,7 +44,7 @@ struct ftrace_chk { > char *str; > } syms[] = { > ENDL > -egrep '(__print_flags|__print_symbolic)' $ftrace_dir*/*/format | \ > +grep -E '(__print_flags|__print_symbolic)' $ftrace_dir*/*/format | \ > sed -f $sedprog | grep '^{' | sort | uniq >> $cprog > cat >> $cprog << ENDL > }; > diff --git a/tests/xfs/505 b/tests/xfs/505 > index 71fb6e9d..0601b1a8 100755 > --- a/tests/xfs/505 > +++ b/tests/xfs/505 > @@ -29,7 +29,7 @@ esac > _require_command "$(type -P $CAT)" $CAT > > for COMMAND in `$XFS_SPACEMAN_PROG -c help $TEST_DIR | awk '{print $1}' | grep -v "^Use"`; do > - $CAT "$MANPAGE" | egrep -q "^\.B.*$COMMAND" || \ > + $CAT "$MANPAGE" | grep -E -q "^\.B.*$COMMAND" || \ > echo "$COMMAND not documented in the xfs_spaceman manpage" > done > > diff --git a/tests/xfs/514 b/tests/xfs/514 > index cf5588f2..94f98398 100755 > --- a/tests/xfs/514 > +++ b/tests/xfs/514 > @@ -41,7 +41,7 @@ truncate -s 128m $file > $MKFS_XFS_PROG $file >> /dev/null > > for COMMAND in `$XFS_DB_PROG -x -c help $file | awk '{print $1}' | grep -v "^Use"`; do > - $CAT "$MANPAGE" | egrep -q "^\.B.*$COMMAND" || \ > + $CAT "$MANPAGE" | grep -E -q "^\.B.*$COMMAND" || \ > echo "$COMMAND not documented in the xfs_db manpage" > done > > diff --git a/tests/xfs/515 b/tests/xfs/515 > index 2d7bbb35..adb2bd6f 100755 > --- a/tests/xfs/515 > +++ b/tests/xfs/515 > @@ -37,7 +37,7 @@ esac > _require_command "$(type -P $CAT)" $CAT > > for COMMAND in `$XFS_QUOTA_PROG -x -c help $file | awk '{print $1}' | grep -v "^Use"`; do > - $CAT "$MANPAGE" | egrep -q "^\.B.*$COMMAND" || \ > + $CAT "$MANPAGE" | grep -E -q "^\.B.*$COMMAND" || \ > echo "$COMMAND not documented in the xfs_quota manpage" > done > > diff --git a/tests/xfs/517 b/tests/xfs/517 > index 6877af13..99fc89b0 100755 > --- a/tests/xfs/517 > +++ b/tests/xfs/517 > @@ -70,7 +70,7 @@ cpus=$(( $(src/feature -o) * 4 * LOAD_FACTOR)) > > echo "Concurrent fsmap and freeze" > filter_output() { > - egrep -v '(Device or resource busy|Invalid argument)' > + grep -E -v '(Device or resource busy|Invalid argument)' > } > freeze_loop() { > end="$1" > diff --git a/tests/xfs/520 b/tests/xfs/520 > index 2fceb07c..dd6d845e 100755 > --- a/tests/xfs/520 > +++ b/tests/xfs/520 > @@ -52,7 +52,7 @@ force_crafted_metadata() { > fi > > _dmesg_since_test_start | tac | sed -ne "0,\#${kmsg}#p" | tac | \ > - egrep -q 'Metadata corruption detected at' && hasmsg=1 > + grep -E -q 'Metadata corruption detected at' && hasmsg=1 > > _scratch_unmount > /dev/null 2>&1 > [ $mounted -eq 0 -o $hasmsg -eq 1 ] || \ > diff --git a/tests/xfs/530 b/tests/xfs/530 > index 9c6f44d7..c960738d 100755 > --- a/tests/xfs/530 > +++ b/tests/xfs/530 > @@ -73,7 +73,7 @@ _try_scratch_mount || _notrun "Couldn't mount fs with synthetic rt volume" > formatted_blksz="$(_get_block_size $SCRATCH_MNT)" > test "$formatted_blksz" -ne "$dbsize" && \ > _notrun "Tried to format with $dbsize blocksize, got $formatted_blksz." > -$XFS_INFO_PROG $SCRATCH_MNT | egrep -q 'realtime.*blocks=0' && \ > +$XFS_INFO_PROG $SCRATCH_MNT | grep -E -q 'realtime.*blocks=0' && \ > _notrun "Filesystem should have a realtime volume" > > echo "Consume free space" > diff --git a/tests/xfs/539 b/tests/xfs/539 > index 77b44c89..778dce85 100755 > --- a/tests/xfs/539 > +++ b/tests/xfs/539 > @@ -36,7 +36,7 @@ dmesg_since_test_tag() > > check_dmesg_for_since_tag() > { > - dmesg_since_test_tag | egrep -q "$1" > + dmesg_since_test_tag | grep -E -q "$1" > } > > echo "Silence is golden." > -- > 2.31.1 > ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 1/2] egrep, fgrep: deprecated 2022-09-15 8:10 ` Zorro Lang @ 2022-09-20 3:17 ` Murphy Zhou 0 siblings, 0 replies; 9+ messages in thread From: Murphy Zhou @ 2022-09-20 3:17 UTC (permalink / raw) To: Zorro Lang; +Cc: fstests, Darrick J. Wong Hi On Thu, Sep 15, 2022 at 4:10 PM Zorro Lang <zlang@redhat.com> wrote: > > On Wed, Sep 14, 2022 at 05:06:09PM +0800, Murphy Zhou wrote: > > Since this grep commit: > > commit a9515624709865d480e3142fd959bccd1c9372d1 > > Author: Paul Eggert <eggert@cs.ucla.edu> > > Date: Sun Aug 15 10:52:13 2021 -0700 > > > > egrep, fgrep: now obsolete > > > > egrep will trigger a warning like: > > +egrep: warning: egrep is obsolescent; using grep -E > > > > This will break many gold output. > > > > Signed-off-by: Murphy Zhou <jencce.kernel@gmail.com> > > --- > > Hi, > > Please rebase this patch on latest fstests for-next branch, I hit below > CONFLICT when I try to merge it: > > $ git am -3 ./20220914_jencce_kernel_egrep_fgrep_deprecated.mbx > Applying: egrep, fgrep: deprecated > Using index info to reconstruct a base tree... > M check > M common/encrypt > M common/rc > M common/xfs > Falling back to patching base and 3-way merge... > Auto-merging common/xfs > Auto-merging common/rc > CONFLICT (content): Merge conflict in common/rc > Auto-merging common/encrypt > Auto-merging check > error: Failed to merge in the changes. > Patch failed at 0001 egrep, fgrep: deprecated > hint: Use 'git am --show-current-patch=diff' to see the failed patch > When you have resolved this problem, run "git am --continue". > If you prefer to skip this patch, run "git am --skip" instead. > To restore the original branch and stop patching, run "git am --abort". Rebased. Will send v2. > > One more tiny question below ... > > > check | 2 +- > > common/btrfs | 4 ++-- > > common/dmlogwrites | 2 +- > > common/dump | 4 ++-- > > [snip] > > > # real QA test starts here > > @@ -48,7 +48,7 @@ while [ $i -le 9 ]; do > > if [ $i -gt 0 ]; then > > sleep 2 > > _modify_level $i > > - fi > > + fi > > What's this change for? Cleaned a trailing whitespace up by the way. Thanks for the review! Regards~ > > Thanks, > Zorro > > > > > _stable_fs > > sleep 2 > > diff --git a/tests/xfs/065 b/tests/xfs/065 > > index 8485dee6..819d385e 100755 > > --- a/tests/xfs/065 > > +++ b/tests/xfs/065 > > @@ -37,7 +37,7 @@ _list_dir() > > find $__dir -exec $here/src/lstat64 -t {} \; |\ > > sed -e 's/.*dumpdir/dumpdir/' -e '/^dumpdir /d' |\ > > sed -e 's/.*restoredir/restoredir/' -e '/^restoredir /d' |\ > > - egrep -v 'housekeeping|dirattr|dirextattr|namreg|state|tree' |\ > > + grep -E -v 'housekeeping|dirattr|dirextattr|namreg|state|tree' |\ > > awk '$3 ~ /^d/ { $2 = "XXX" } {print}' |\ > > LC_COLLATE=POSIX sort > > } > > diff --git a/tests/xfs/083 b/tests/xfs/083 > > index a9acc9f5..edab3b7b 100755 > > --- a/tests/xfs/083 > > +++ b/tests/xfs/083 > > @@ -145,7 +145,7 @@ cat "$ROUND2_LOG" >> $seqres.full > > echo "++ check fs (2)" >> $seqres.full > > _repair_scratch_fs >> $seqres.full 2>&1 > > > > -egrep -q '(did not fix|makes no progress)' $seqres.full && echo "xfs_repair failed" | tee -a $seqres.full > > +grep -E -q '(did not fix|makes no progress)' $seqres.full && echo "xfs_repair failed" | tee -a $seqres.full > > if [ "$(wc -l < "$ROUND2_LOG")" -ne 8 ]; then > > echo "xfs_repair did not fix everything" | tee -a $seqres.full > > fi > > diff --git a/tests/xfs/122 b/tests/xfs/122 > > index 18748e67..91083d60 100755 > > --- a/tests/xfs/122 > > +++ b/tests/xfs/122 > > @@ -182,8 +182,8 @@ echo 'int main(int argc, char *argv[]) {' >>$cprog > > # > > cat /usr/include/xfs/xfs*.h | indent |\ > > _attribute_filter |\ > > -egrep '(} *xfs_.*_t|^struct xfs_[a-z0-9_]*$)' |\ > > -egrep -v -f $tmp.ignore |\ > > +grep -E '(} *xfs_.*_t|^struct xfs_[a-z0-9_]*$)' |\ > > +grep -E -v -f $tmp.ignore |\ > > sed -e 's/^.*}[[:space:]]*//g' -e 's/;.*$//g' -e 's/_t, /_t\n/g' |\ > > sort | uniq |\ > > awk '{printf("printf(\"sizeof(%s) = %%zu\\n\", sizeof(%s));\n", $0, $0);}' |\ > > diff --git a/tests/xfs/138 b/tests/xfs/138 > > index 966ac03a..c49d2d9e 100755 > > --- a/tests/xfs/138 > > +++ b/tests/xfs/138 > > @@ -33,7 +33,7 @@ echo "Test with interactive" > > (echo "sb 0"; sleep 0.5; > > echo "p magicnum"; sleep 0.5; > > echo "source $tmp.a"; sleep 0.5; > > - echo "p magicnum"; sleep 0.5) | _scratch_xfs_db 2>&1 | sed -e 's/xfs_db> //g' -e 's/0x58465342/XFS_MAGIC/g' | egrep '(This is file|magicnum =)' > > + echo "p magicnum"; sleep 0.5) | _scratch_xfs_db 2>&1 | sed -e 's/xfs_db> //g' -e 's/0x58465342/XFS_MAGIC/g' | grep -E '(This is file|magicnum =)' > > > > # success, all done > > status=0 > > diff --git a/tests/xfs/185 b/tests/xfs/185 > > index f0e87642..73b21092 100755 > > --- a/tests/xfs/185 > > +++ b/tests/xfs/185 > > @@ -108,7 +108,7 @@ expected_end="$(( (alloc_rtx * rtextsize - 1) / 512 ))" > > # file_offset file_end physical_offset physical_end > > rtfile_exts() { > > $XFS_IO_PROG -c 'bmap -elp' $rtfile | \ > > - egrep -v '(^/|EXT:|hole)' | \ > > + grep -E -v '(^/|EXT:|hole)' | \ > > tr ':.[]' ' ' | \ > > while read junk foff fend physoff physend junk; do > > echo "$foff $fend $physoff $physend" > > diff --git a/tests/xfs/186 b/tests/xfs/186 > > index b54fcf26..f44158e3 100755 > > --- a/tests/xfs/186 > > +++ b/tests/xfs/186 > > @@ -55,8 +55,8 @@ _filter_inode() > > { > > tee -a $seqres.full | \ > > sed -e "s/core.forkoff/forkoff/g" | \ > > - egrep '^u.sfdir2|^u.sfdir3|^a.sfattr|forkoff' | \ > > - egrep -v 'inumber|parent' | \ > > + grep -E '^u.sfdir2|^u.sfdir3|^a.sfattr|forkoff' | \ > > + grep -E -v 'inumber|parent' | \ > > sed -e s/sfdir3/sfdir2/g | \ > > grep -v filetype > > } > > diff --git a/tests/xfs/293 b/tests/xfs/293 > > index 20f8c486..7a17eb81 100755 > > --- a/tests/xfs/293 > > +++ b/tests/xfs/293 > > @@ -33,7 +33,7 @@ esac > > _require_command "$(type -P $CAT)" $CAT > > > > for COMMAND in `$XFS_IO_PROG -c help | awk '{print $1}' | grep -v "^Use"`; do > > - $CAT "$MANPAGE" | egrep -q "^\.B.*$COMMAND" || \ > > + $CAT "$MANPAGE" | grep -E -q "^\.B.*$COMMAND" || \ > > echo "$COMMAND not documented in the xfs_io manpage" > > done > > > > diff --git a/tests/xfs/330 b/tests/xfs/330 > > index 40be4c46..5a82a1fd 100755 > > --- a/tests/xfs/330 > > +++ b/tests/xfs/330 > > @@ -26,7 +26,7 @@ _require_nobody > > > > do_repquota() > > { > > - repquota $SCRATCH_MNT | egrep '^(fsgqa|root|nobody)' | sort -r > > + repquota $SCRATCH_MNT | grep -E '^(fsgqa|root|nobody)' | sort -r > > } > > > > rm -f "$seqres.full" > > diff --git a/tests/xfs/422 b/tests/xfs/422 > > index fdbb8bf1..f3c63e8d 100755 > > --- a/tests/xfs/422 > > +++ b/tests/xfs/422 > > @@ -73,7 +73,7 @@ cpus=$(( $($here/src/feature -o) * 4 * LOAD_FACTOR)) > > > > echo "Concurrent repair" > > filter_output() { > > - egrep -v '(Device or resource busy|Invalid argument)' > > + grep -E -v '(Device or resource busy|Invalid argument)' > > } > > freeze_loop() { > > end="$1" > > diff --git a/tests/xfs/499 b/tests/xfs/499 > > index b5597708..9672f95d 100755 > > --- a/tests/xfs/499 > > +++ b/tests/xfs/499 > > @@ -44,7 +44,7 @@ struct ftrace_chk { > > char *str; > > } syms[] = { > > ENDL > > -egrep '(__print_flags|__print_symbolic)' $ftrace_dir*/*/format | \ > > +grep -E '(__print_flags|__print_symbolic)' $ftrace_dir*/*/format | \ > > sed -f $sedprog | grep '^{' | sort | uniq >> $cprog > > cat >> $cprog << ENDL > > }; > > diff --git a/tests/xfs/505 b/tests/xfs/505 > > index 71fb6e9d..0601b1a8 100755 > > --- a/tests/xfs/505 > > +++ b/tests/xfs/505 > > @@ -29,7 +29,7 @@ esac > > _require_command "$(type -P $CAT)" $CAT > > > > for COMMAND in `$XFS_SPACEMAN_PROG -c help $TEST_DIR | awk '{print $1}' | grep -v "^Use"`; do > > - $CAT "$MANPAGE" | egrep -q "^\.B.*$COMMAND" || \ > > + $CAT "$MANPAGE" | grep -E -q "^\.B.*$COMMAND" || \ > > echo "$COMMAND not documented in the xfs_spaceman manpage" > > done > > > > diff --git a/tests/xfs/514 b/tests/xfs/514 > > index cf5588f2..94f98398 100755 > > --- a/tests/xfs/514 > > +++ b/tests/xfs/514 > > @@ -41,7 +41,7 @@ truncate -s 128m $file > > $MKFS_XFS_PROG $file >> /dev/null > > > > for COMMAND in `$XFS_DB_PROG -x -c help $file | awk '{print $1}' | grep -v "^Use"`; do > > - $CAT "$MANPAGE" | egrep -q "^\.B.*$COMMAND" || \ > > + $CAT "$MANPAGE" | grep -E -q "^\.B.*$COMMAND" || \ > > echo "$COMMAND not documented in the xfs_db manpage" > > done > > > > diff --git a/tests/xfs/515 b/tests/xfs/515 > > index 2d7bbb35..adb2bd6f 100755 > > --- a/tests/xfs/515 > > +++ b/tests/xfs/515 > > @@ -37,7 +37,7 @@ esac > > _require_command "$(type -P $CAT)" $CAT > > > > for COMMAND in `$XFS_QUOTA_PROG -x -c help $file | awk '{print $1}' | grep -v "^Use"`; do > > - $CAT "$MANPAGE" | egrep -q "^\.B.*$COMMAND" || \ > > + $CAT "$MANPAGE" | grep -E -q "^\.B.*$COMMAND" || \ > > echo "$COMMAND not documented in the xfs_quota manpage" > > done > > > > diff --git a/tests/xfs/517 b/tests/xfs/517 > > index 6877af13..99fc89b0 100755 > > --- a/tests/xfs/517 > > +++ b/tests/xfs/517 > > @@ -70,7 +70,7 @@ cpus=$(( $(src/feature -o) * 4 * LOAD_FACTOR)) > > > > echo "Concurrent fsmap and freeze" > > filter_output() { > > - egrep -v '(Device or resource busy|Invalid argument)' > > + grep -E -v '(Device or resource busy|Invalid argument)' > > } > > freeze_loop() { > > end="$1" > > diff --git a/tests/xfs/520 b/tests/xfs/520 > > index 2fceb07c..dd6d845e 100755 > > --- a/tests/xfs/520 > > +++ b/tests/xfs/520 > > @@ -52,7 +52,7 @@ force_crafted_metadata() { > > fi > > > > _dmesg_since_test_start | tac | sed -ne "0,\#${kmsg}#p" | tac | \ > > - egrep -q 'Metadata corruption detected at' && hasmsg=1 > > + grep -E -q 'Metadata corruption detected at' && hasmsg=1 > > > > _scratch_unmount > /dev/null 2>&1 > > [ $mounted -eq 0 -o $hasmsg -eq 1 ] || \ > > diff --git a/tests/xfs/530 b/tests/xfs/530 > > index 9c6f44d7..c960738d 100755 > > --- a/tests/xfs/530 > > +++ b/tests/xfs/530 > > @@ -73,7 +73,7 @@ _try_scratch_mount || _notrun "Couldn't mount fs with synthetic rt volume" > > formatted_blksz="$(_get_block_size $SCRATCH_MNT)" > > test "$formatted_blksz" -ne "$dbsize" && \ > > _notrun "Tried to format with $dbsize blocksize, got $formatted_blksz." > > -$XFS_INFO_PROG $SCRATCH_MNT | egrep -q 'realtime.*blocks=0' && \ > > +$XFS_INFO_PROG $SCRATCH_MNT | grep -E -q 'realtime.*blocks=0' && \ > > _notrun "Filesystem should have a realtime volume" > > > > echo "Consume free space" > > diff --git a/tests/xfs/539 b/tests/xfs/539 > > index 77b44c89..778dce85 100755 > > --- a/tests/xfs/539 > > +++ b/tests/xfs/539 > > @@ -36,7 +36,7 @@ dmesg_since_test_tag() > > > > check_dmesg_for_since_tag() > > { > > - dmesg_since_test_tag | egrep -q "$1" > > + dmesg_since_test_tag | grep -E -q "$1" > > } > > > > echo "Silence is golden." > > -- > > 2.31.1 > > > ^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2022-09-20 3:18 UTC | newest] Thread overview: 9+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2022-09-14 9:06 [PATCH 1/2] egrep, fgrep: deprecated Murphy Zhou 2022-09-14 9:06 ` [PATCH 2/2] common/quota: fix grep pattern Murphy Zhou 2022-09-14 15:24 ` Zorro Lang 2022-09-15 5:28 ` Murphy Zhou 2022-09-14 15:15 ` [PATCH 1/2] egrep, fgrep: deprecated Zorro Lang 2022-09-15 5:27 ` Murphy Zhou 2022-09-15 6:59 ` Zorro Lang 2022-09-15 8:10 ` Zorro Lang 2022-09-20 3:17 ` Murphy Zhou
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.