#! /bin/bash # SPDX-License-Identifier: GPL-2.0 # Copyright (c) 2017 Oracle, Inc. All Rights Reserved. # # FS QA Test No. 138 # # Test nesting the 'source' command in xfs_db via -c and interactive. # seq=`basename $0` seqres=$RESULT_DIR/$seq echo "QA output created by $seq" here=`pwd` tmp=/tmp/$$ status=1 # failure is the default! trap "_cleanup; exit \$status" 0 1 2 3 7 15 _cleanup() { cd / rm -f $tmp.* } # get standard environment, filters and checks . ./common/rc # real QA test starts here _supported_os Linux _supported_fs xfs _require_scratch cat > $tmp.a << ENDL echo This is file A source $tmp.b ENDL cat > $tmp.b << ENDL echo This is file B ENDL echo "Test with -c" _scratch_xfs_db -c "sb 0" -c "p magicnum" -c "source $tmp.a" -c "p magicnum" | sed -e 's/0x58465342/XFS_MAGIC/g' 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 =)' # success, all done status=0 exit