test ls: file using absolute path -fs NAMENODE -touchz /file1 -fs NAMENODE -ls /file1 -fs NAMENODE -rm /file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file1 ls: file using relative path -fs NAMENODE -mkdir -p dir -fs NAMENODE -touchz file1 -fs NAMENODE -ls file1 -fs NAMENODE -rm file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file1 ls: files using globbing -fs NAMENODE -mkdir -p dir -fs NAMENODE -touchz file1 -fs NAMENODE -touchz file2 -fs NAMENODE -touchz file3 -fs NAMENODE -touchz file4 -fs NAMENODE -ls file* -fs NAMENODE -rm -r /user RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file3 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file4 ls: directory using absolute path -fs NAMENODE -mkdir /dir1 -fs NAMENODE -ls / -fs NAMENODE -rm -r /dir1 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir1 ls: directory using relative path -fs NAMENODE -mkdir -p dir1 -fs NAMENODE -ls -fs NAMENODE -rm -r dir1 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir1 ls: directory using globbing -fs NAMENODE -mkdir -p dir1 -fs NAMENODE -mkdir -p dir2 -fs NAMENODE -mkdir -p dir3 -fs NAMENODE -mkdir -p dir4 -fs NAMENODE -ls -fs NAMENODE -rm -r /user RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir1 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir3 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir4 ls: file/directory that does not exist in / -fs NAMENODE -ls /file1 RegexpComparator ^ls: `/file1': No such file or directory ls: file/directory that does not exist in home directory (/user/username) -fs NAMENODE -ls /user RegexpComparator ^ls: `/user': No such file or directory ls: Non-URI input file at Namenode's path -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -ls NAMENODE/file1 -fs NAMENODE -rm NAMENODE/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file1 ls: file at hdfs:// path -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -ls hdfs:///file1 -fs NAMENODE -rm hdfs:///file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file1 ls: Non-URI input file at Namenode's path using globing -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -touchz NAMENODE/file2 -fs NAMENODE -touchz NAMENODE/file3 -fs NAMENODE -ls NAMENODE/file* -fs NAMENODE -rm NAMENODE/file* RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file3 ls: file at hdfs:// path using globing -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -touchz hdfs:///file2 -fs NAMENODE -touchz hdfs:///file3 -fs NAMENODE -ls hdfs:///file* -fs NAMENODE -rm hdfs:///file* RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file3 ls: Non-URI input dir at Namenode's path -fs NAMENODE -mkdir -p NAMENODE/user/dir1 -fs NAMENODE -ls hdfs:///user/ -fs NAMENODE -rm hdfs:///user/dir1 RegexpComparator Found [0-9] items RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///user/dir1 ls: dir at hdfs:// path -fs NAMENODE -mkdir -p hdfs:///user/dir1 -fs NAMENODE -ls hdfs:///user/ -fs NAMENODE -rm hdfs:///user/dir1 RegexpComparator Found [0-9] items RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///user/dir1 ls: Non-URI input dir at Namenode's path using globing -fs NAMENODE -mkdir -p NAMENODE/user/dir1 -fs NAMENODE -mkdir -p NAMENODE/user/dir2 -fs NAMENODE -mkdir -p NAMENODE/user/dir3 -fs NAMENODE -ls hdfs:///user/ -fs NAMENODE -rm hdfs:///user/dir* RegexpComparator Found [0-9] items RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///user/dir1 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///user/dir2 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///user/dir3 ls: dir at hdfs:// path using globing -fs NAMENODE -mkdir -p hdfs:///user/dir1 -fs NAMENODE -mkdir -p hdfs:///user/dir2 -fs NAMENODE -mkdir -p hdfs:///user/dir3 -fs NAMENODE -ls hdfs:///user/ -fs NAMENODE -rm hdfs:///user/dir* RegexpComparator Found [0-9] items RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///user/dir1 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///user/dir2 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///user/dir3 ls: non-existent file/directory at hdfs:// path -fs NAMENODE -ls hdfs:///file1 RegexpComparator ^ls: `hdfs:///file1': No such file or directory ls: non-existent file/directory in Namenode's path -fs NAMENODE -ls NAMENODE/file1 RegexpComparator ^ls: `hdfs://\w+[-.a-z0-9]*:[0-9]+/file1': No such file or directory ls: whitespaces in an absolute path to a file -fs NAMENODE -mkdir -p "/a path with/whitespaces in directories" -fs NAMENODE -touchz "/a path with/whitespaces in directories/and file names" -fs NAMENODE -ls "/a path with/whitespaces in directories" -fs NAMENODE -rm -r "/a path with" RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/a path with/whitespaces in directories/and file names ls: whitespaces in a relative path to a file -fs NAMENODE -mkdir -p "a path with/whitespaces in directories" -fs NAMENODE -touchz "a path with/whitespaces in directories/and file names" -fs NAMENODE -ls "a path with/whitespaces in directories" -fs NAMENODE -rm -r "a path with" RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*a path with/whitespaces in directories/and file names ls: whitespaces in a scheme-qualified path to a file -fs NAMENODE -mkdir -p "NAMENODE/a path with/whitespaces in directories" -fs NAMENODE -touchz "NAMENODE/a path with/whitespaces in directories/and file names" -fs NAMENODE -ls "NAMENODE/a path with/whitespaces in directories" -fs NAMENODE -rm -r "NAMENODE/a path with" RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/a path with/whitespaces in directories/and file names ls: whitespaces in an absolute path to a file, using globbing -fs NAMENODE -mkdir -p "/a path with/whitespaces in directories" -fs NAMENODE -touchz "/a path with/whitespaces in directories/and file names" -fs NAMENODE -touchz "/a path with/whitespaces in directories/and file names 2" -fs NAMENODE -ls "/a*/w*" -fs NAMENODE -rm -r "/a path with" TokenComparator Found 2 items RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/a path with/whitespaces in directories/and file names RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/a path with/whitespaces in directories/and file names 2 ls: whitespaces in a relative path to a file, using globbing -fs NAMENODE -mkdir -p "a path with/whitespaces in directories" -fs NAMENODE -touchz "a path with/whitespaces in directories/and file names" -fs NAMENODE -touchz "a path with/whitespaces in directories/and file names 2" -fs NAMENODE -ls "a*/w*" -fs NAMENODE -rm -r "a path with" TokenComparator Found 2 items RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*a path with/whitespaces in directories/and file names RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*a path with/whitespaces in directories/and file names 2 ls: whitespaces in a scheme-qualified path to a file, using globbing -fs NAMENODE -mkdir -p "NAMENODE/a path with/whitespaces in directories" -fs NAMENODE -touchz "NAMENODE/a path with/whitespaces in directories/and file names" -fs NAMENODE -touchz "NAMENODE/a path with/whitespaces in directories/and file names 2" -fs NAMENODE -ls "NAMENODE/a*/w*" -fs NAMENODE -rm -r "NAMENODE/a path with" TokenComparator Found 2 items RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/a path with/whitespaces in directories/and file names RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/a path with/whitespaces in directories/and file names 2 ls: files/directories using absolute path -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir0/dir1 -fs NAMENODE -mkdir /dir0/dir1/dir1 -fs NAMENODE -mkdir /dir0/dir1/dir2 -fs NAMENODE -mkdir /dir0/dir2 -fs NAMENODE -mkdir /dir0/dir2/dir1 -fs NAMENODE -mkdir /dir0/dir2/dir2 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -touchz /dir0/dir1/file1 -fs NAMENODE -touchz /dir0/dir1/file2 -fs NAMENODE -touchz /dir0/dir2/file1 -fs NAMENODE -touchz /dir0/dir2/file2 -fs NAMENODE -touchz /dir0/dir1/dir1/file1 -fs NAMENODE -touchz /dir0/dir1/dir1/file2 -fs NAMENODE -touchz /dir0/dir2/dir2/file1 -fs NAMENODE -touchz /dir0/dir2/dir2/file2 -fs NAMENODE -ls -R /dir0 -fs NAMENODE -rm -r /dir0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir2 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/dir1 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/dir2 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir2/dir1 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir2/dir2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file0 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir2/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir2/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir2/dir2/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir2/dir2/file2 ls: files/directories using relative path -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -mkdir -p dir0/dir1 -fs NAMENODE -mkdir -p dir0/dir1/dir1 -fs NAMENODE -mkdir -p dir0/dir1/dir2 -fs NAMENODE -mkdir -p dir0/dir2 -fs NAMENODE -mkdir -p dir0/dir2/dir1 -fs NAMENODE -mkdir -p dir0/dir2/dir2 -fs NAMENODE -touchz dir0/file0 -fs NAMENODE -touchz dir0/dir1/file1 -fs NAMENODE -touchz dir0/dir1/file2 -fs NAMENODE -touchz dir0/dir2/file1 -fs NAMENODE -touchz dir0/dir2/file2 -fs NAMENODE -touchz dir0/dir1/dir1/file1 -fs NAMENODE -touchz dir0/dir1/dir1/file2 -fs NAMENODE -touchz dir0/dir2/dir2/file1 -fs NAMENODE -touchz dir0/dir2/dir2/file2 -fs NAMENODE -ls -R dir0 -fs NAMENODE -rm -r /user RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir2 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/dir1 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/dir2 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir2/dir1 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir2/dir2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/file0 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir2/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir2/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir2/dir2/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir2/dir2/file2 ls: files/directories using globbing -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -mkdir -p dir0/dir1 -fs NAMENODE -mkdir -p dir0/dir1/dir1 -fs NAMENODE -mkdir -p dir0/dir1/dir2 -fs NAMENODE -mkdir -p dir0/dir2 -fs NAMENODE -mkdir -p dir0/dir2/dir1 -fs NAMENODE -mkdir -p dir0/dir2/dir2 -fs NAMENODE -touchz dir0/file0 -fs NAMENODE -touchz dir0/dir1/file1 -fs NAMENODE -touchz dir0/dir1/file2 -fs NAMENODE -touchz dir0/dir2/file1 -fs NAMENODE -touchz dir0/dir2/file2 -fs NAMENODE -touchz dir0/dir1/dir1/file1 -fs NAMENODE -touchz dir0/dir1/dir1/file2 -fs NAMENODE -touchz dir0/dir2/dir2/file1 -fs NAMENODE -touchz dir0/dir2/dir2/file2 -fs NAMENODE -ls -R dir0/* -fs NAMENODE -rm -r /user RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/dir1 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/dir2 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir2/dir1 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir2/dir2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/file0 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir2/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir2/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir2/dir2/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir2/dir2/file2 ls: file/directory that does not exist in / -fs NAMENODE -ls -R /file1 RegexpComparator ^ls: `/file1': No such file or directory ls: file/directory that does not exist in home directory (/user/username) -fs NAMENODE -ls -R /user RegexpComparator ^ls: `/user': No such file or directory ls: dir at hdfs:// path -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir0/dir1 -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -touchz hdfs:///dir0/file1 -fs NAMENODE -touchz hdfs:///dir0/dir1/file1 -fs NAMENODE -ls -R hdfs:/// -fs NAMENODE -rm hdfs:///dir0 -fs NAMENODE -rm hdfs:///file1 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file1 ls: files/directories in hdfs:// path using globbing -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir0/dir1 -fs NAMENODE -touchz hdfs:///dir0/file1 -fs NAMENODE -touchz hdfs:///dir0/dir1/file1 -fs NAMENODE -ls -R hdfs:///dir0/* -fs NAMENODE -rm -r hdfs:///dir0 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file1 ls: Non-existent file/directory in hdfs:// path -fs NAMENODE -ls -R hdfs:///file1 RegexpComparator ^ls: `hdfs:///file1': No such file or directory ls: dir at Namenode's path -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir0/dir1 -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -touchz NAMENODE/dir0/file1 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file1 -fs NAMENODE -ls -R NAMENODE/ -fs NAMENODE -rm hdfs:///dir0 -fs NAMENODE -rm hdfs:///file1 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file1 ls: Non-URI input files/directories in Namenode's path -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir0/dir1 -fs NAMENODE -touchz NAMENODE/dir0/file1 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file1 -fs NAMENODE -ls -R NAMENODE/dir0/* -fs NAMENODE -rm -r NAMENODE/dir0 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file1 ls: Non-URI input for non-existent file/directory in Namenode's path -fs NAMENODE -ls -R NAMENODE/file1 RegexpComparator ^ls: `hdfs://\w+[-.a-z0-9]*:[0-9]+/file1': No such file or directory ls: Negative test for quoted /*/* globbing false -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir0/dir1 -fs NAMENODE -touchz /dir0/dir1/file1 -fs NAMENODE -ls -R /\*/\* -fs NAMENODE -rm -r /dir0 TokenComparator ls: `/*/*': No such file or directory ls: Test for quoted globbing false -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir0/\* -fs NAMENODE -touchz /dir0/\*/file -fs NAMENODE -touchz /dir0/dir1/file1 -fs NAMENODE -ls -R /dir0/\* -fs NAMENODE -rm -r /dir0 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/\*/file ls: files sorted in default order -fs NAMENODE -mkdir /dir -fs NAMENODE -touchz /dir/file2 /dir/file1 /dir/file3 -fs NAMENODE -ls /dir -fs NAMENODE -rm -r /dir RegexpAcrossOutputComparator Found 3 items -rw-r--r--( )*1( )*[a-zA-z0-9]*( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir/file1 -rw-r--r--( )*1( )*[a-zA-z0-9]*( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir/file2 -rw-r--r--( )*1( )*[a-zA-z0-9]*( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir/file3 ls: files sorted in reverse default order -fs NAMENODE -mkdir /dir -fs NAMENODE -touchz /dir/file2 /dir/file1 /dir/file3 -fs NAMENODE -ls -r /dir -fs NAMENODE -rm -r /dir RegexpAcrossOutputComparator Found 3 items -rw-r--r--( )*1( )*[a-zA-z0-9]*( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir/file3 -rw-r--r--( )*1( )*[a-zA-z0-9]*( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir/file2 -rw-r--r--( )*1( )*[a-zA-z0-9]*( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir/file1 ls: files sorted in size order -fs NAMENODE -mkdir /dir -fs NAMENODE -put CLITEST_DATA/data30bytes /dir/data30bytes -fs NAMENODE -put CLITEST_DATA/data15bytes /dir/data15bytes -fs NAMENODE -put CLITEST_DATA/data120bytes /dir/data120bytes -fs NAMENODE -put CLITEST_DATA/data60bytes /dir/data60bytes -fs NAMENODE -ls -S /dir -fs NAMENODE -rm -r /dir RegexpAcrossOutputComparator Found 4 items -rw-r--r--( )*1( )*[a-zA-z0-9]*( )*supergroup( )*120( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir/data120bytes -rw-r--r--( )*1( )*[a-zA-z0-9]*( )*supergroup( )*60( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir/data60bytes -rw-r--r--( )*1( )*[a-zA-z0-9]*( )*supergroup( )*30( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir/data30bytes -rw-r--r--( )*1( )*[a-zA-z0-9]*( )*supergroup( )*15( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir/data15bytes ls: files sorted in reverse size order -fs NAMENODE -mkdir /dir -fs NAMENODE -put CLITEST_DATA/data30bytes /dir/data30bytes -fs NAMENODE -put CLITEST_DATA/data15bytes /dir/data15bytes -fs NAMENODE -put CLITEST_DATA/data120bytes /dir/data120bytes -fs NAMENODE -put CLITEST_DATA/data60bytes /dir/data60bytes -fs NAMENODE -ls -S -r /dir -fs NAMENODE -rm -r /dir RegexpAcrossOutputComparator Found 4 items -rw-r--r--( )*1( )*[a-zA-z0-9]*( )*supergroup( )*15( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir/data15bytes -rw-r--r--( )*1( )*[a-zA-z0-9]*( )*supergroup( )*30( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir/data30bytes -rw-r--r--( )*1( )*[a-zA-z0-9]*( )*supergroup( )*60( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir/data60bytes -rw-r--r--( )*1( )*[a-zA-z0-9]*( )*supergroup( )*120( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir/data120bytes ls: files sorted in modification order -fs NAMENODE -mkdir /dir -fs NAMENODE -touchz /dir/first -fs NAMENODE -touchz /dir/second -fs NAMENODE -touchz /dir/third -fs NAMENODE -touchz /dir/fourth -fs NAMENODE -touchz /dir/fifth -fs NAMENODE -ls -t /dir -fs NAMENODE -rm -r /dir RegexpAcrossOutputComparator Found 5 items -rw-r--r--( )*1( )*[a-zA-z0-9]*( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir/fifth -rw-r--r--( )*1( )*[a-zA-z0-9]*( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir/fourth -rw-r--r--( )*1( )*[a-zA-z0-9]*( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir/third -rw-r--r--( )*1( )*[a-zA-z0-9]*( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir/second -rw-r--r--( )*1( )*[a-zA-z0-9]*( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir/first ls: files sorted in reverse modification order -fs NAMENODE -mkdir /dir -fs NAMENODE -touchz /dir/first -fs NAMENODE -touchz /dir/second -fs NAMENODE -touchz /dir/third -fs NAMENODE -touchz /dir/fourth -fs NAMENODE -touchz /dir/fifth -fs NAMENODE -ls -t -r /dir -fs NAMENODE -rm -r /dir RegexpAcrossOutputComparator Found 5 items -rw-r--r--( )*1( )*[a-zA-z0-9]*( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir/first -rw-r--r--( )*1( )*[a-zA-z0-9]*( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir/second -rw-r--r--( )*1( )*[a-zA-z0-9]*( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir/third -rw-r--r--( )*1( )*[a-zA-z0-9]*( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir/fourth -rw-r--r--( )*1( )*[a-zA-z0-9]*( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir/fifth rm: Test for quoted globbing false -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir0/\* -fs NAMENODE -touchz /dir0/\*/file -fs NAMENODE -mkdir /dir0/dir1/ -fs NAMENODE -touchz /dir0/dir1/file1 -fs NAMENODE -rm -r /dir0/\* -fs NAMENODE -ls -R /dir0 -fs NAMENODE -rm -r /dir0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file1 du: file using absolute path -fs NAMENODE -put CLITEST_DATA/data15bytes /data15bytes -fs NAMENODE -du /data15bytes -fs NAMENODE -rm /data15bytes RegexpComparator ^15\s+/data15bytes du: file using relative path -fs NAMENODE -mkdir -p dir -fs NAMENODE -put CLITEST_DATA/data15bytes data15bytesZZ -fs NAMENODE -du data15bytesZZ -fs NAMENODE -rm data15bytesZZ RegexpComparator ^15\s+data15bytesZZ du: files using globbing -fs NAMENODE -mkdir -p CLITEST_DATA -fs NAMENODE -put CLITEST_DATA/data15bytes data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes data30bytes -fs NAMENODE -put CLITEST_DATA/data60bytes data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes data120bytes -fs NAMENODE -du data* -fs NAMENODE -rm data*bytes RegexpComparator ^120\s+data120bytes RegexpComparator ^15\s+data15bytes RegexpComparator ^30\s+data30bytes RegexpComparator ^60\s+data60bytes du: directory using absolute path -fs NAMENODE -mkdir /dir0 -fs NAMENODE -put CLITEST_DATA/data15bytes /dir0/data15bytes -fs NAMENODE -du /dir0 -fs NAMENODE -rm -r /dir0 RegexpComparator ^15\s+/dir0/data15bytes du: directory using relative path -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -put CLITEST_DATA/data15bytes dir0/data15bytes -fs NAMENODE -du dir0 -fs NAMENODE -rm -r /user RegexpComparator ^15\s+dir0/data15bytes du: directory using globbing -fs NAMENODE -mkdir /dir0 -fs NAMENODE -put CLITEST_DATA/data15bytes /dir0/data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes /dir0/data30bytes -fs NAMENODE -put CLITEST_DATA/data60bytes /dir0/data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes /dir0/data120bytes -fs NAMENODE -du /dir0/* -fs NAMENODE -rm -r /dir0 RegexpComparator ^15( |\t)*/dir0/data15bytes RegexpComparator ^30( |\t)*/dir0/data30bytes RegexpComparator ^60( |\t)*/dir0/data60bytes RegexpComparator ^120( |\t)*/dir0/data120bytes du: Test for hdfs:// path - file -fs NAMENODE -put CLITEST_DATA/data15bytes hdfs:///data15bytes -fs NAMENODE -du hdfs:///data15bytes -fs NAMENODE -rm hdfs:///data15bytes RegexpComparator ^15\s+hdfs:///data15bytes du: Test for hdfs:// path - files using globbing -fs NAMENODE -put CLITEST_DATA/data15bytes hdfs:///data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes hdfs:///data30bytes -fs NAMENODE -put CLITEST_DATA/data60bytes hdfs:///data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes hdfs:///data120bytes -fs NAMENODE -du hdfs:///data* -fs NAMENODE -rm -r hdfs:///* RegexpComparator ^120\s+hdfs:///data120bytes RegexpComparator ^15\s+hdfs:///data15bytes RegexpComparator ^30\s+hdfs:///data30bytes RegexpComparator ^60\s+hdfs:///data60bytes du: Test for hdfs:// path - directory -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -put CLITEST_DATA/data15bytes hdfs:///dir0/data15bytes -fs NAMENODE -du hdfs:///dir0 -fs NAMENODE -rm -r hdfs:///dir0 RegexpComparator ^15\s+hdfs:///dir0/data15bytes duh: Test for hdfs:// path - directory -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -put CLITEST_DATA/data15bytes hdfs:///dir0/data15bytes -fs NAMENODE -put CLITEST_DATA/data1k hdfs:///dir0/data1k -fs NAMENODE -du -h hdfs:///dir0 -fs NAMENODE -rm -r hdfs:///dir0 RegexpComparator ^15\s+hdfs:///dir0/data15bytes RegexpComparator ^1\.0 K\s+hdfs:///dir0/data1k du: Test for hdfs:// path - directory using globbing -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -put CLITEST_DATA/data15bytes hdfs:///dir0/data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes hdfs:///dir0/data30bytes -fs NAMENODE -put CLITEST_DATA/data60bytes hdfs:///dir0/data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes hdfs:///dir0/data120bytes -fs NAMENODE -du hdfs:///dir0/* -fs NAMENODE -rm -r hdfs:///dir0 RegexpComparator ^15( |\t)*hdfs:///dir0/data15bytes RegexpComparator ^30( |\t)*hdfs:///dir0/data30bytes RegexpComparator ^60( |\t)*hdfs:///dir0/data60bytes RegexpComparator ^120( |\t)*hdfs:///dir0/data120bytes du: Test for Namenode's path - file -fs NAMENODE -put CLITEST_DATA/data15bytes NAMENODE/data15bytes -fs NAMENODE -du NAMENODE/data15bytes -fs NAMENODE -rm NAMENODE/data15bytes RegexpComparator ^15( |\t)*NAMENODE/data15bytes du: Test for Namenode's path - files using globbing -fs NAMENODE -put CLITEST_DATA/data15bytes NAMENODE/data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes NAMENODE/data30bytes -fs NAMENODE -put CLITEST_DATA/data60bytes NAMENODE/data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes NAMENODE/data120bytes -fs NAMENODE -du NAMENODE/data* -fs NAMENODE -rm -r NAMENODE/* RegexpComparator ^15( |\t)*NAMENODE/data15bytes RegexpComparator ^30( |\t)*NAMENODE/data30bytes RegexpComparator ^60( |\t)*NAMENODE/data60bytes RegexpComparator ^120( |\t)*NAMENODE/data120bytes du: Test for Namenode's path - directory -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -put CLITEST_DATA/data15bytes NAMENODE/dir0/data15bytes -fs NAMENODE -du NAMENODE/dir0 -fs NAMENODE -rm -r NAMENODE/dir0 RegexpComparator ^15( |\t)*NAMENODE/dir0/data15bytes du: Test for Namenode's path - directory using globbing -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -put CLITEST_DATA/data15bytes NAMENODE/dir0/data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes NAMENODE/dir0/data30bytes -fs NAMENODE -put CLITEST_DATA/data60bytes NAMENODE/dir0/data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes NAMENODE/dir0/data120bytes -fs NAMENODE -du NAMENODE/dir0/* -fs NAMENODE -rm -r NAMENODE/dir0 RegexpComparator ^15( |\t)*NAMENODE/dir0/data15bytes RegexpComparator ^30( |\t)*NAMENODE/dir0/data30bytes RegexpComparator ^60( |\t)*NAMENODE/dir0/data60bytes RegexpComparator ^120( |\t)*NAMENODE/dir0/data120bytes dus: directories/files using absolute path -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir0/dir1 -fs NAMENODE -mkdir /dir0/dir1/dir1 -fs NAMENODE -mkdir /dir0/dir1/dir2 -fs NAMENODE -mkdir /dir0/dir2 -fs NAMENODE -mkdir /dir0/dir2/dir1 -fs NAMENODE -mkdir /dir0/dir2/dir2 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -put CLITEST_DATA/data15bytes /dir0/dir1/data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes /dir0/dir1/data30bytes -fs NAMENODE -put CLITEST_DATA/data15bytes /dir0/dir2/data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes /dir0/dir2/data30bytes -fs NAMENODE -put CLITEST_DATA/data60bytes /dir0/dir1/dir1/data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes /dir0/dir1/dir2/data120bytes -fs NAMENODE -put CLITEST_DATA/data60bytes /dir0/dir2/dir1/data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes /dir0/dir2/dir2/data120bytes -fs NAMENODE -du -s /dir0 -fs NAMENODE -rm -r /dir0 RegexpComparator ^450\s+/dir0 dus: directories/files using relative path -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -mkdir -p dir0/dir1 -fs NAMENODE -mkdir -p dir0/dir1/dir1 -fs NAMENODE -mkdir -p dir0/dir1/dir2 -fs NAMENODE -mkdir -p dir0/dir2 -fs NAMENODE -mkdir -p dir0/dir2/dir1 -fs NAMENODE -mkdir -p dir0/dir2/dir2 -fs NAMENODE -touchz dir0/file0 -fs NAMENODE -put CLITEST_DATA/data15bytes dir0/dir1/data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes dir0/dir1/data30bytes -fs NAMENODE -put CLITEST_DATA/data15bytes dir0/dir2/data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes dir0/dir2/data30bytes -fs NAMENODE -put CLITEST_DATA/data60bytes dir0/dir1/dir1/data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes dir0/dir1/dir2/data120bytes -fs NAMENODE -put CLITEST_DATA/data60bytes dir0/dir2/dir1/data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes dir0/dir2/dir2/data120bytes -fs NAMENODE -du -s dir0 -fs NAMENODE -rm -r /user RegexpComparator ^450\s+dir0 dus: directories/files using globbing -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir0/dir1 -fs NAMENODE -mkdir /dir0/dir1/dir1 -fs NAMENODE -mkdir /dir0/dir1/dir2 -fs NAMENODE -mkdir /dir0/dir2 -fs NAMENODE -mkdir /dir0/dir2/dir1 -fs NAMENODE -mkdir /dir0/dir2/dir2 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -put CLITEST_DATA/data15bytes /dir0/dir1/data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes /dir0/dir1/data30bytes -fs NAMENODE -put CLITEST_DATA/data15bytes /dir0/dir2/data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes /dir0/dir2/data30bytes -fs NAMENODE -put CLITEST_DATA/data60bytes /dir0/dir1/dir1/data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes /dir0/dir1/dir2/data120bytes -fs NAMENODE -put CLITEST_DATA/data60bytes /dir0/dir2/dir1/data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes /dir0/dir2/dir2/data120bytes -fs NAMENODE -mkdir /donotcountdir0 -fs NAMENODE -put CLITEST_DATA/data15bytes /donotcountdir0/data15bytes -fs NAMENODE -put CLITEST_DATA/data15bytes /donotcountdir0/data15bytes -fs NAMENODE -put CLITEST_DATA/data15bytes /donotcountdir0/data15bytes -fs NAMENODE -put CLITEST_DATA/data15bytes /donotcountdir0/data15bytes -fs NAMENODE -du -s /dir* -fs NAMENODE -rm -r /dir0 -fs NAMENODE -rm -r /donotcountdir0 RegexpComparator ^450\s+/dir0 dus: Test for hdfs:// path - directories/files -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir0/dir1 -fs NAMENODE -mkdir hdfs:///dir0/dir1/dir1 -fs NAMENODE -mkdir hdfs:///dir0/dir1/dir2 -fs NAMENODE -mkdir hdfs:///dir0/dir2 -fs NAMENODE -mkdir hdfs:///dir0/dir2/dir1 -fs NAMENODE -mkdir hdfs:///dir0/dir2/dir2 -fs NAMENODE -touchz hdfs:///dir0/file0 -fs NAMENODE -put CLITEST_DATA/data15bytes hdfs:///dir0/dir1/data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes hdfs:///dir0/dir1/data30bytes -fs NAMENODE -put CLITEST_DATA/data15bytes hdfs:///dir0/dir2/data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes hdfs:///dir0/dir2/data30bytes -fs NAMENODE -put CLITEST_DATA/data60bytes hdfs:///dir0/dir1/dir1/data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes hdfs:///dir0/dir1/dir2/data120bytes -fs NAMENODE -put CLITEST_DATA/data60bytes hdfs:///dir0/dir2/dir1/data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes hdfs:///dir0/dir2/dir2/data120bytes -fs NAMENODE -du -s hdfs:///dir0 -fs NAMENODE -rm -r hdfs:///dir0 RegexpComparator ^450\s+hdfs:///dir0 dus: Test for hdfs:// path - directories/files using globbing -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir0/dir1 -fs NAMENODE -mkdir hdfs:///dir0/dir1/dir1 -fs NAMENODE -mkdir hdfs:///dir0/dir1/dir2 -fs NAMENODE -mkdir hdfs:///dir0/dir2 -fs NAMENODE -mkdir hdfs:///dir0/dir2/dir1 -fs NAMENODE -mkdir hdfs:///dir0/dir2/dir2 -fs NAMENODE -touchz hdfs:///dir0/file0 -fs NAMENODE -put CLITEST_DATA/data15bytes hdfs:///dir0/dir1/data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes hdfs:///dir0/dir1/data30bytes -fs NAMENODE -put CLITEST_DATA/data15bytes hdfs:///dir0/dir2/data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes hdfs:///dir0/dir2/data30bytes -fs NAMENODE -put CLITEST_DATA/data60bytes hdfs:///dir0/dir1/dir1/data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes hdfs:///dir0/dir1/dir2/data120bytes -fs NAMENODE -put CLITEST_DATA/data60bytes hdfs:///dir0/dir2/dir1/data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes hdfs:///dir0/dir2/dir2/data120bytes -fs NAMENODE -mkdir /donotcountdir0 -fs NAMENODE -put CLITEST_DATA/data15bytes hdfs:///donotcountdir0/data15bytes -fs NAMENODE -put CLITEST_DATA/data15bytes hdfs:///donotcountdir0/data15bytes -fs NAMENODE -put CLITEST_DATA/data15bytes hdfs:///donotcountdir0/data15bytes -fs NAMENODE -put CLITEST_DATA/data15bytes hdfs:///donotcountdir0/data15bytes -fs NAMENODE -du -s hdfs:///dir* -fs NAMENODE -rm -r hdfs:///dir0 -fs NAMENODE -rm -r hdfs:///donotcountdir0 RegexpComparator ^450\s+hdfs:///dir0 dus: Test for Namenode's path - directories/files -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir0/dir1 -fs NAMENODE -mkdir NAMENODE/dir0/dir1/dir1 -fs NAMENODE -mkdir NAMENODE/dir0/dir1/dir2 -fs NAMENODE -mkdir NAMENODE/dir0/dir2 -fs NAMENODE -mkdir NAMENODE/dir0/dir2/dir1 -fs NAMENODE -mkdir NAMENODE/dir0/dir2/dir2 -fs NAMENODE -touchz NAMENODE/dir0/file0 -fs NAMENODE -put CLITEST_DATA/data15bytes NAMENODE/dir0/dir1/data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes NAMENODE/dir0/dir1/data30bytes -fs NAMENODE -put CLITEST_DATA/data15bytes NAMENODE/dir0/dir2/data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes NAMENODE/dir0/dir2/data30bytes -fs NAMENODE -put CLITEST_DATA/data60bytes NAMENODE/dir0/dir1/dir1/data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes NAMENODE/dir0/dir1/dir2/data120bytes -fs NAMENODE -put CLITEST_DATA/data60bytes NAMENODE/dir0/dir2/dir1/data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes NAMENODE/dir0/dir2/dir2/data120bytes -fs NAMENODE -du -s NAMENODE/dir0 -fs NAMENODE -rm -r NAMENODE/dir0 RegexpComparator ^450\s+NAMENODE/dir0 dus: Test for Namenode's path - directories/files using globbing -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir0/dir1 -fs NAMENODE -mkdir NAMENODE/dir0/dir1/dir1 -fs NAMENODE -mkdir NAMENODE/dir0/dir1/dir2 -fs NAMENODE -mkdir NAMENODE/dir0/dir2 -fs NAMENODE -mkdir NAMENODE/dir0/dir2/dir1 -fs NAMENODE -mkdir NAMENODE/dir0/dir2/dir2 -fs NAMENODE -touchz NAMENODE/dir0/file0 -fs NAMENODE -put CLITEST_DATA/data15bytes NAMENODE/dir0/dir1/data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes NAMENODE/dir0/dir1/data30bytes -fs NAMENODE -put CLITEST_DATA/data15bytes NAMENODE/dir0/dir2/data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes NAMENODE/dir0/dir2/data30bytes -fs NAMENODE -put CLITEST_DATA/data60bytes NAMENODE/dir0/dir1/dir1/data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes NAMENODE/dir0/dir1/dir2/data120bytes -fs NAMENODE -put CLITEST_DATA/data60bytes NAMENODE/dir0/dir2/dir1/data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes NAMENODE/dir0/dir2/dir2/data120bytes -fs NAMENODE -mkdir NAMENODE/donotcountdir0 -fs NAMENODE -put CLITEST_DATA/data15bytes NAMENODE/donotcountdir0/data15bytes -fs NAMENODE -put CLITEST_DATA/data15bytes NAMENODE/donotcountdir0/data15bytes -fs NAMENODE -put CLITEST_DATA/data15bytes NAMENODE/donotcountdir0/data15bytes -fs NAMENODE -put CLITEST_DATA/data15bytes NAMENODE/donotcountdir0/data15bytes -fs NAMENODE -du -s NAMENODE/dir* -fs NAMENODE -rm -r NAMENODE/dir0 -fs NAMENODE -rm -r NAMENODE/donotcountdir0 RegexpComparator ^450\s+NAMENODE/dir0 mv: file (absolute path) to file (absolute path) -fs NAMENODE -touchz /file1 -fs NAMENODE -mv /file1 /file2 -fs NAMENODE -ls /file* -fs NAMENODE -rm /file2 : RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file[^1] mv: file (absolute path) to file (relative path) -fs NAMENODE -touchz /file1 -fs NAMENODE -mv /file1 file2 -fs NAMENODE -rm -r /file1 RegexpComparator ^mv: `file2': No such file or directory mv: file (absolute path) to directory (absolute path); keep the same name at the destination -fs NAMENODE -touchz /file1 -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mv /file1 /dir0 -fs NAMENODE -ls -R /dir0 -fs NAMENODE -rm -r /dir0 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file1 mv: file (absolute path) to directory (absolute path); keep the same name at the destination [ TIED to previous test ] -fs NAMENODE -ls /file1 TokenComparator ls: `/file1': No such file or directory mv: file (absolute path) to directory (absolute path); change the name at the destination -fs NAMENODE -touchz /file1 -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mv /file1 /dir0/file2 -fs NAMENODE -ls /dir0 -fs NAMENODE -rm -r /dir0 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file2 mv: file (absolute path) to directory (absolute path); change the name at the destination [ TIED to previous test ] -fs NAMENODE -ls /file1 TokenComparator ls: `/file1': No such file or directory mv: files (absolute path) to directory (absolute path) using globbing -fs NAMENODE -touchz /file1 -fs NAMENODE -touchz /file2 -fs NAMENODE -touchz /file3 -fs NAMENODE -touchz /file4 -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mv /file* /dir0 -fs NAMENODE -ls -R /* -fs NAMENODE -rm -r /dir0 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file3 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file4 mv: files (absolute path) to directory (absolute path) using globbing [ TIED to previous test ] -fs NAMENODE -ls /file* TokenComparator ls: `/file*': No such file or directory mv: file (relative) to file (relative) -fs NAMENODE -mkdir -p dir -fs NAMENODE -touchz file1 -fs NAMENODE -mv file1 file2 -fs NAMENODE -ls file* -fs NAMENODE -rm /user RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file[^1] mv: moving file to file(rename in for hdfs:// path) -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -mv hdfs:///file1 hdfs:///file2 -fs NAMENODE -ls hdfs:///file* -fs NAMENODE -rm hdfs:///file2 : RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file[^1] mv: moving file to directory (keep the same name at the destination) in hdfs:// path - -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mv hdfs:///file1 hdfs:///dir0 -fs NAMENODE -ls -R hdfs:///dir0 -fs NAMENODE -rm -r hdfs:///dir0 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file1 mv: moving files to directory in hdfs:// path - [ TIED to previous test ] -fs NAMENODE -ls hdfs:///file* TokenComparator ls: `hdfs:///file*': No such file or directory mv: moving file that does not exist in hdfs:// path -fs NAMENODE -mv hdfs:///file1 hdfs:///file2 TokenComparator mv: `hdfs:///file1': No such file or directory mv: moving file to directory (different name at the destination) in hdfs:// path -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mv hdfs:///file1 hdfs:///dir0/file2 -fs NAMENODE -ls hdfs:///dir0 -fs NAMENODE -rm -r hdfs:///dir0 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file2 mv: moving file to directory (different name at the destination) in hdfs:// path [ TIED to previous test ] -fs NAMENODE -ls hdfs:///file1 TokenComparator ls: `hdfs:///file1': No such file or directory mv: moving group of files to directory using globbing in hdfs:// path - -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -touchz hdfs:///file2 -fs NAMENODE -touchz hdfs:///file3 -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mv hdfs:///file* hdfs:///dir0 -fs NAMENODE -ls -R hdfs:///* -fs NAMENODE -rm -r hdfs:///dir0 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file3 mv: moving files to directory using globbing in hdfs:// [ TIED to previous test ] -fs NAMENODE -ls hdfs:///file* TokenComparator ls: `hdfs:///file*': No such file or directory mv: moving file to file(rename) in Namenode's path - -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -mv NAMENODE/file1 NAMENODE/file2 -fs NAMENODE -ls NAMENODE/file* -fs NAMENODE -rm NAMENODE/file2 : RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file[^1] mv: moving file to directory (keep the same name at the destination) in Namenode's path -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mv NAMENODE/file1 NAMENODE/dir0 -fs NAMENODE -ls -R NAMENODE/dir0 -fs NAMENODE -rm -r NAMENODE/dir0 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file1 mv: moving files to directory in Namenode's path - [ TIED to previous test ] -fs NAMENODE -ls NAMENODE/file1 RegexpComparator ^ls: `hdfs://\w+[-.a-z0-9]*:[0-9]+/file1': No such file or directory mv: moving file that does not exist in Namenode's path -fs NAMENODE -mv NAMENODE/file1 NAMENODE/file2 RegexpComparator ^mv: `hdfs://\w+[-.a-z0-9]*:[0-9]+/file1': No such file or directory mv: moving file to directory (different name at the destination) in Namenode's path -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mv NAMENODE/file1 NAMENODE/dir0/file2 -fs NAMENODE -ls NAMENODE/dir0 -fs NAMENODE -rm -r NAMENODE/dir0 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file2 mv: moving file to directory (different name at the destination) in Namenode's path [ TIED to previous test ] -fs NAMENODE -ls NAMENODE/file1 RegexpComparator ^ls: `NAMENODE/file1': No such file or directory mv: moving group of files to directory using globbing in Namenode's path -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -touchz NAMENODE/file2 -fs NAMENODE -touchz NAMENODE/file3 -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mv NAMENODE/file* NAMENODE/dir0 -fs NAMENODE -ls -R NAMENODE/* -fs NAMENODE -rm -r NAMENODE/dir0 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file3 mv: moving files to directory using globbing in Namenode's path [ TIED to previous test ] -fs NAMENODE -ls NAMENODE/file* RegexpComparator ^ls: `hdfs://\w+[-.a-z0-9]*:[0-9]+/file\*': No such file or directory mv: moving directory to directory in hdfs:// path -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir1 -fs NAMENODE -touchz hdfs:///dir0/file1 -fs NAMENODE -mv hdfs:///dir0 hdfs:///dir1 -fs NAMENODE -ls -R hdfs:///dir1 -fs NAMENODE -rm hdfs:///dir1 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir1/dir0 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir1/dir0/file1 mv: moving directory to directory in Namenode's path -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir1 -fs NAMENODE -touchz NAMENODE/dir0/file1 -fs NAMENODE -mv NAMENODE/dir0 NAMENODE/dir1 -fs NAMENODE -ls -R NAMENODE/dir1 -fs NAMENODE -rm NAMENODE/dir1 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir1/dir0 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir1/dir0/file1 cp: file (absolute path) to file (absolute path) -fs NAMENODE -touchz /file1 -fs NAMENODE -cp /file1 /file2 -fs NAMENODE -ls /file* -fs NAMENODE -rm /file* : RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file2 cp: file (absolute path) to file (relative path) -fs NAMENODE -mkdir -p dir -fs NAMENODE -touchz /file1 -fs NAMENODE -cp /file1 file2 -fs NAMENODE -ls /file1 file2 -fs NAMENODE -rm -r /file1 file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file2 cp: file (relative path) to file (absolute path) -fs NAMENODE -mkdir -p dir -fs NAMENODE -touchz file1 -fs NAMENODE -cp file1 /file2 -fs NAMENODE -ls file1 /file2 -fs NAMENODE -rm -r file1 /file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file2 cp: file (relative path) to file (relative path) -fs NAMENODE -mkdir -p dir -fs NAMENODE -touchz file1 -fs NAMENODE -cp file1 file2 -fs NAMENODE -ls file1 file2 -fs NAMENODE -rm -r file1 file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file2 cp: file (absolute path) to directory (absolute path); keep the same name at the destination -fs NAMENODE -touchz /file1 -fs NAMENODE -mkdir /dir0 -fs NAMENODE -cp /file1 /dir0 -fs NAMENODE -ls /file1 /dir0 -fs NAMENODE -rm -r /dir0 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file1 cp: file (absolute path) to directory (absolute path); change the name at the destination -fs NAMENODE -touchz /file1 -fs NAMENODE -mkdir /dir0 -fs NAMENODE -cp /file1 /dir0/file2 -fs NAMENODE -ls /file1 /dir0 -fs NAMENODE -rm -r /dir0 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file2 cp: files to directory (absolute path) using globbing -fs NAMENODE -touchz /file1 -fs NAMENODE -touchz /file2 -fs NAMENODE -touchz /file3 -fs NAMENODE -touchz /file4 -fs NAMENODE -mkdir /dir0 -fs NAMENODE -cp /file* /dir0 -fs NAMENODE -ls -R /* -fs NAMENODE -rm -r /dir0 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file3 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file4 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file3 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file4 cp: files to directory (absolute path) without globbing -fs NAMENODE -touchz /file1 -fs NAMENODE -touchz /file2 -fs NAMENODE -touchz /file3 -fs NAMENODE -touchz /file4 -fs NAMENODE -mkdir /dir0 -fs NAMENODE -cp /file1 /file2 /file3 /file4 /dir0 -fs NAMENODE -ls -R /* -fs NAMENODE -rm -r /dir0 /file* RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file3 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file4 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file3 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file4 cp: copying non existent file (absolute path) -fs NAMENODE -cp /file /file1 -fs NAMENODE -rm -r /user : RegexpComparator ^cp: `/file': No such file or directory cp: copying non existent file (relative path) -fs NAMENODE -cp touchz test -fs NAMENODE -cp file1 file2 -fs NAMENODE -rm -r /user : RegexpComparator ^cp: `file2': No such file or directory cp: files to an existent file using globbing -fs NAMENODE -touchz /file1 -fs NAMENODE -touchz /file2 -fs NAMENODE -touchz /file3 -fs NAMENODE -touchz /file4 -fs NAMENODE -touchz /file5 -fs NAMENODE -cp /file* /file5 -fs NAMENODE -rm -r /user RegexpComparator ^cp: `/file5': Is not a directory cp: files to an existent file without globbing -fs NAMENODE -touchz /file1 -fs NAMENODE -touchz /file2 -fs NAMENODE -touchz /file3 -fs NAMENODE -touchz /file4 -fs NAMENODE -touchz /file5 -fs NAMENODE -cp /file1 /file2 /file3 /file4 /file5 -fs NAMENODE -rm -r /user RegexpComparator ^cp: `/file5': Is not a directory cp: files to a non existent directory using globbing -fs NAMENODE -touchz /file1 -fs NAMENODE -touchz /file2 -fs NAMENODE -touchz /file3 -fs NAMENODE -touchz /file4 -fs NAMENODE -cp /file* dir -fs NAMENODE -rm -r /user RegexpComparator ^cp: `dir': No such file or directory cp: files to a non existent directory without globbing -fs NAMENODE -touchz /file1 -fs NAMENODE -touchz /file2 -fs NAMENODE -touchz /file3 -fs NAMENODE -touchz /file4 -fs NAMENODE -cp /file1 /file2 /file3 /file4 dir -fs NAMENODE -rm -r /user RegexpComparator ^cp: `dir': No such file or directory cp: file to file copy in hdfs:// path -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -cp hdfs:///file1 hdfs:///file2 -fs NAMENODE -ls hdfs:///file* -fs NAMENODE -rm hdfs:///file* : RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file2 cp: file to directory copy (same name at the destination) in hdfs:// path -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -cp hdfs:///file1 hdfs:///dir0 -fs NAMENODE -ls hdfs:///file1 hdfs:///dir0 -fs NAMENODE -rm -r hdfs:///dir0/ hdfs://file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file1 cp: file to directory (different name at the destination) in hdfs:// path -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -cp hdfs:///file1 hdfs:///dir0/file2 -fs NAMENODE -ls hdfs:///file1 hdfs:///dir0 -fs NAMENODE -rm -r hdfs:///dir0/ RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file2 cp: files to directory using globbing in hdfs:// path -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -touchz hdfs:///file2 -fs NAMENODE -touchz hdfs:///file3 -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -cp hdfs:///file* hdfs:///dir0 -fs NAMENODE -ls -R hdfs:///* -fs NAMENODE -rm -r hdfs:///file* -fs NAMENODE -rm -r hdfs:///dir0/ RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file3 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file3 cp: files to directory in hdfs:// path without globbing -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -touchz hdfs:///file2 -fs NAMENODE -touchz hdfs:///file3 -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -cp hdfs:///file1 hdfs:///file2 hdfs:///file3 hdfs:///dir0 -fs NAMENODE -ls -R hdfs:///* -fs NAMENODE -rm -r hdfs:///file* -fs NAMENODE -rm -r hdfs:///dir0/ RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file3 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file3 cp: copying non existent file in hdfs:// path -fs NAMENODE -cp hdfs:///file hdfs:///file1 : RegexpComparator ^cp: `hdfs:///file': No such file or directory cp: copying files to an existent file in hdfs:// path using globbing -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -touchz hdfs:///file2 -fs NAMENODE -touchz hdfs:///file3 -fs NAMENODE -touchz hdfs:///file4 -fs NAMENODE -touchz hdfs:///file5 -fs NAMENODE -cp hdfs:///file* hdfs:///file5 -fs NAMENODE -rm -r hdfs:///file* RegexpComparator ^cp: `hdfs:///file5': Is not a directory cp: copying files to an existent file in hdfs:// path without globbing -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -touchz hdfs:///file2 -fs NAMENODE -touchz hdfs:///file3 -fs NAMENODE -touchz hdfs:///file4 -fs NAMENODE -touchz hdfs:///file5 -fs NAMENODE -cp hdfs:///file1 hdfs:///file2 hdfs:///file3 hdfs:///file4 hdfs:///file5 -fs NAMENODE -rm -r hdfs:///file* RegexpComparator ^cp: `hdfs:///file5': Is not a directory cp: copying files to a non existent directory in hdfs:// path using globbing -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -touchz hdfs:///file2 -fs NAMENODE -touchz hdfs:///file3 -fs NAMENODE -touchz hdfs:///file4 -fs NAMENODE -cp hdfs:///file* hdfs:///dir -fs NAMENODE -rm -r hdfs:///file* RegexpComparator ^cp: `hdfs:///dir': No such file or directory cp: copying files to a non existent directory in hdfs:// path without globbing -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -touchz hdfs:///file2 -fs NAMENODE -touchz hdfs:///file3 -fs NAMENODE -touchz hdfs:///file4 -fs NAMENODE -cp hdfs:///file1 hdfs:///file2 hdfs:///file3 hdfs:///file4 hdfs:///dir -fs NAMENODE -rm -r hdfs:///file* RegexpComparator ^cp: `hdfs:///dir': No such file or directory cp: copying non existent directory in hdfs:// path -fs NAMENODE -mkdir hdfs:///dir1 -fs NAMENODE -cp hdfs:///dir0 hdfs:///dir1 -fs NAMNEODE -rm -r hdfs:///dir1 RegexpComparator ^cp: `hdfs:///dir0': No such file or directory cp: putting file into an already existing destination with -f option(absolute path) -fs NAMENODE -mkdir /user -fs NAMENODE -touchz /user/file0 -fs NAMENODE -cp -f CLITEST_DATA/data120bytes /user/file0 -fs NAMENODE -cat /user/file0 -fs NAMENODE -rm -r /user RegexpComparator 12345678901234 cp: copying directory to directory in hdfs:// path -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir1 -fs NAMENODE -touchz hdfs:///dir0/file1 -fs NAMENODE -cp hdfs:///dir0 hdfs:///dir1 -fs NAMENODE -ls -R hdfs:///dir* -fs NAMENODE -rm -r hdfs:///* RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file1 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir1/dir0 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir1/dir0/file1 cp: copying multiple directories to directory using globbing in hdfs:// path -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir1 -fs NAMENODE -mkdir hdfs:///dir2 -fs NAMENODE -mkdir hdfs:///dest -fs NAMENODE -cp hdfs:///dir* hdfs:///dest -fs NAMENODE -ls -R hdfs:///d* -fs NAMNEODE -rm -r hdfs:///d* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dest/dir0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dest/dir1 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dest/dir2 cp: copying multiple directories to directory in hdfs:// path without using globbing -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir1 -fs NAMENODE -mkdir hdfs:///dir2 -fs NAMENODE -mkdir hdfs:///dest -fs NAMENODE -cp hdfs:///dir0 hdfs:///dir1 hdfs:///dir2 hdfs:///dest -fs NAMENODE -ls -R hdfs:///d* -fs NAMNEODE -rm -r hdfs:///* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dest/dir0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dest/dir1 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dest/dir2 cp: file to file copy in Namenode's path -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -cp NAMENODE/file1 NAMENODE/file2 -fs NAMENODE -ls NAMENODE/file* -fs NAMENODE -rm NAMENODE/file* : RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file2 cp: file to directory copy (same name at the destination) in Namenode's path -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -cp NAMENODE/file1 NAMENODE/dir0 -fs NAMENODE -ls NAMENODE/file1 NAMENODE/dir0 -fs NAMENODE -rm -r NAMENODE/dir0/ NAMENODE/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file1 cp: file to directory (different name at the destination) in Namenode's path -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -cp NAMENODE/file1 NAMENODE/dir0/file2 -fs NAMENODE -ls NAMENODE/file1 NAMENODE/dir0 -fs NAMENODE -rm -r NAMENODE/dir0/ RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file2 cp: files to directory in Namenode's path using globbing -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -touchz NAMENODE/file2 -fs NAMENODE -touchz NAMENODE/file3 -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -cp NAMENODE/file* NAMENODE/dir0 -fs NAMENODE -ls -R NAMENODE/* -fs NAMENODE -rm -r NAMENODE/file* -fs NAMENODE -rm -r NAMENODE/dir0/ RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file3 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file3 cp: files to directory in Namenode's path without globbing -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -touchz NAMENODE/file2 -fs NAMENODE -touchz NAMENODE/file3 -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -cp NAMENODE/file1 NAMENODE/file2 NAMENODE/file3 NAMENODE/dir0 -fs NAMENODE -ls -R NAMENODE/* -fs NAMENODE -rm -r NAMENODE/file* -fs NAMENODE -rm -r NAMENODE/dir0/ RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file3 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file3 cp: copying non existent file in Namenode's path -fs NAMENODE -cp NAMENODE/file NAMENODE/file1 : RegexpComparator ^cp: `hdfs://\w+[-.a-z0-9]*:[0-9]+/file': No such file or directory cp: copying files to an existent file in Namenode's path using globbing -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -touchz NAMENODE/file2 -fs NAMENODE -touchz NAMENODE/file3 -fs NAMENODE -touchz NAMENODE/file4 -fs NAMENODE -touchz NAMENODE/file5 -fs NAMENODE -cp NAMENODE/file* NAMENODE/file5 -fs NAMENODE -rm -r NAMENODE/file* RegexpComparator ^cp: `hdfs://\w+[-.a-z0-9]*:[0-9]+/file5': Is not a directory cp: copying files to an existent file in Namenode's path without globbing -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -touchz NAMENODE/file2 -fs NAMENODE -touchz NAMENODE/file3 -fs NAMENODE -touchz NAMENODE/file4 -fs NAMENODE -touchz NAMENODE/file5 -fs NAMENODE -cp NAMENODE/file1 NAMENODE/file2 NAMENODE/file3 NAMENODE/file4 NAMENODE/file5 -fs NAMENODE -rm -r NAMENODE/file* RegexpComparator ^cp: `hdfs://\w+[-.a-z0-9]*:[0-9]+/file5': Is not a directory cp: copying files to a non existent directory in Namenode's path using globbing -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -touchz NAMENODE/file2 -fs NAMENODE -touchz NAMENODE/file3 -fs NAMENODE -touchz NAMENODE/file4 -fs NAMENODE -cp NAMENODE/file* NAMENODE/dir -fs NAMENODE -rm -r NAMENODE/file* RegexpComparator ^cp: `hdfs://\w+[-.a-z0-9]*:[0-9]+/dir': No such file or directory cp: copying files to a non existent directory in Namenode's path without globbing -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -touchz NAMENODE/file2 -fs NAMENODE -touchz NAMENODE/file3 -fs NAMENODE -touchz NAMENODE/file4 -fs NAMENODE -cp NAMENODE/file1 NAMENODE/file2 NAMENODE/file3 NAMENODE/file4 NAMENODE/dir -fs NAMENODE -rm -r NAMENODE/file* RegexpComparator ^cp: `hdfs://\w+[-.a-z0-9]*:[0-9]+/dir': No such file or directory cp: copying directory to directory in Namenode's path -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir1 -fs NAMENODE -touchz NAMENODE/dir0/file1 -fs NAMENODE -cp NAMENODE/dir0 NAMENODE/dir1 -fs NAMENODE -ls -R NAMENODE/dir* -fs NAMENODE -rm -r NAMENODE/* RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file1 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir1/dir0 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir1/dir0/file1 cp: copying multiple directories to directory in Namenode's path using globbing -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir1 -fs NAMENODE -mkdir NAMENODE/dir2 -fs NAMENODE -mkdir NAMENODE/dest -fs NAMENODE -cp NAMENODE/dir* NAMENODE/dest -fs NAMENODE -ls -R NAMENODE/d* -fs NAMNEODE -rm -r NAMENODE/d* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dest/dir0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dest/dir1 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dest/dir2 cp: copying multiple directories to directory in Namenode's path without using globbing -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir1 -fs NAMENODE -mkdir NAMENODE/dir2 -fs NAMENODE -mkdir NAMENODE/dest -fs NAMENODE -cp NAMENODE/dir0 NAMENODE/dir1 NAMENODE/dir2 NAMENODE/dest -fs NAMENODE -ls -R NAMENODE/d* -fs NAMNEODE -rm -r NAMENODE/* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dest/dir0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dest/dir1 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dest/dir2 rm: removing a file (absolute path) -fs NAMENODE -mkdir /dir0 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -rm /dir0/file0 -fs NAMENODE -rm /user RegexpComparator ^Deleted /dir0/file0 rm: removing a file (relative path) -fs NAMENODE -mkdir -p dir -fs NAMENODE -touchz file0 -fs NAMENODE -rm file0 -fs NAMENODE -rm /user RegexpComparator ^Deleted file0 rm: removing files by globbing (absolute path) -fs NAMENODE -mkdir /dir0 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -touchz /dir0/file1 -fs NAMENODE -touchz /dir0/file2 -fs NAMENODE -touchz /dir0/file3 -fs NAMENODE -rm /dir0/file* -fs NAMENODE -rm /user RegexpComparator ^Deleted /dir0/file0 RegexpComparator ^Deleted /dir0/file1 RegexpComparator ^Deleted /dir0/file2 RegexpComparator ^Deleted /dir0/file3 rm: removing files by globbing (relative path) -fs NAMENODE -mkdir dir -fs NAMENODE -touchz file0 -fs NAMENODE -touchz file1 -fs NAMENODE -touchz file2 -fs NAMENODE -touchz file3 -fs NAMENODE -rm file* -fs NAMENODE -rm /user RegexpComparator ^Deleted file0 RegexpComparator ^Deleted file1 RegexpComparator ^Deleted file2 RegexpComparator ^Deleted file3 rm: removing a directory (absolute path) -fs NAMENODE mkdir /dir0 -fs NAMENODE -rm /dir0 -fs NAMENODE -rm /user RegexpComparator ^rm: `/dir0': Is a directory rm: removing a directory (relative path) -fs NAMENODE mkdir -p dir0 -fs NAMENODE -rm dir0 -fs NAMENODE -rm /user RegexpComparator ^rm: `dir0': No such file or directory rm: removing a nonexistent file (absolute path) -fs NAMENODE -rm /dir0/file0 -fs NAMENODE -rm /user RegexpComparator ^rm: `/dir0/file0': No such file or directory rm: removing a nonexistent file (relative path) -fs NAMENODE -rm file0 -fs NAMENODE -rm /user RegexpComparator ^rm: `file0': No such file or directory rm: removing a file in hdfs:// path -fs NAMENODE -touchz hdfs:///file0 -fs NAMENODE -rm hdfs:///file0 -fs NAMENODE -rm hdfs:///* RegexpComparator ^Deleted hdfs:///file0 rm: removing files by globbing in hdfs:// path -fs NAMENODE -touchz hdfs:///file0 -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -touchz hdfs:///file2 -fs NAMENODE -touchz hdfs:///file3 -fs NAMENODE -rm hdfs:///file* -fs NAMENODE -rm hdfs:///* RegexpComparator ^Deleted hdfs:///file0 RegexpComparator ^Deleted hdfs:///file1 RegexpComparator ^Deleted hdfs:///file2 RegexpComparator ^Deleted hdfs:///file3 rm: removing a directory in hdfs:// path -fs NAMENODE mkdir hdfs:///dir0 -fs NAMENODE -rm hdfs:///dir0 -fs NAMENODE -rm -r hdfs:///* RegexpComparator ^rm: `hdfs:///dir0': Is a directory rm: removing a nonexistent file or dirctory in hdfs:// path -fs NAMENODE -rm hdfs:///file0 -fs NAMENODE -rm hdfs:///* RegexpComparator ^rm: `hdfs:///file0': No such file or directory rm: removing files without globbing in hdfs:// path -fs NAMENODE -touchz hdfs:///file0 -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -touchz hdfs:///file2 -fs NAMENODE -touchz hdfs:///file3 -fs NAMENODE -rm hdfs:///file0 hdfs:///file1 hdfs:///file2 hdfs:///file3 -fs NAMENODE -rm hdfs:///* RegexpComparator ^Deleted hdfs:///file0 RegexpComparator ^Deleted hdfs:///file1 RegexpComparator ^Deleted hdfs:///file2 RegexpComparator ^Deleted hdfs:///file3 rm: removing a file in Namenode's path -fs NAMENODE -touchz NAMENODE/file0 -fs NAMENODE -rm NAMENODE/file0 -fs NAMENODE -rm NAMENODE/* RegexpComparator ^Deleted NAMENODE/file0 rm: removing files by globbing in Namenode's path -fs NAMENODE -touchz NAMENODE/file0 -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -touchz NAMENODE/file2 -fs NAMENODE -touchz NAMENODE/file3 -fs NAMENODE -rm NAMENODE/file* -fs NAMENODE -rm NAMENODE/* RegexpComparator ^Deleted NAMENODE/file0 RegexpComparator ^Deleted NAMENODE/file1 RegexpComparator ^Deleted NAMENODE/file2 RegexpComparator ^Deleted NAMENODE/file3 rm: removing a directory in Namenode's path -fs NAMENODE mkdir NAMENODE/dir0 -fs NAMENODE -rm NAMENODE/dir0 -fs NAMENODE -rm -r NAMENODE/* RegexpComparator rm: `NAMENODE/dir0': No such file or directory rm: removing a nonexistent file or directory in Namenode's path -fs NAMENODE -rm NAMENODE/file0 -fs NAMENODE -rm NAMENODE/* RegexpComparator ^rm: `NAMENODE/file0': No such file or directory rm: Tremoving files without globbing in Namenode path -fs NAMENODE -touchz NAMENODE/file0 -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -touchz NAMENODE/file2 -fs NAMENODE -touchz NAMENODE/file3 -fs NAMENODE -rm NAMENODE/file0 NAMENODE/file1 NAMENODE/file2 NAMENODE/file3 -fs NAMENODE -rm NAMENODE/* RegexpComparator ^Deleted NAMENODE/file0 RegexpComparator ^Deleted NAMENODE/file1 RegexpComparator ^Deleted NAMENODE/file2 RegexpComparator ^Deleted NAMENODE/file3 rm: removing a file (absolute path) -fs NAMENODE -mkdir /dir0 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -rm -r /dir0/file0 -fs NAMENODE -rm -r /user RegexpComparator ^Deleted /dir0/file0 rm: removing a file (relative path) -fs NAMENODE -mkdir -p dir -fs NAMENODE -touchz file0 -fs NAMENODE -rm -r file0 -fs NAMENODE -rm -r /user RegexpComparator ^Deleted file0 rm: removing a directory (absolute path) -fs NAMENODE -touchz /dir0 -fs NAMENODE -rm -r /dir0 -fs NAMENODE -rm -r /user RegexpComparator ^Deleted /dir0 rm: removing a directory (relative path) -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -rm -r dir0 -fs NAMENODE -rm -r /user RegexpComparator ^Deleted dir0 rm: removing directories by globbing (absolute path) -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir1 -fs NAMENODE -mkdir /dir2 -fs NAMENODE -mkdir /dir3 -fs NAMENODE -rm -r /dir* -fs NAMENODE -rm /user RegexpComparator ^Deleted /dir0 RegexpComparator ^Deleted /dir1 RegexpComparator ^Deleted /dir2 RegexpComparator ^Deleted /dir3 rm: removing directories by globbing (relative path) -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -mkdir -p dir1 -fs NAMENODE -mkdir -p dir2 -fs NAMENODE -mkdir -p dir3 -fs NAMENODE -rm -r dir* -fs NAMENODE -rm /user RegexpComparator ^Deleted dir0 RegexpComparator ^Deleted dir1 RegexpComparator ^Deleted dir2 RegexpComparator ^Deleted dir3 rm: removing a nonexistent file (absolute path) -fs NAMENODE -rm -r /dir0/file0 -fs NAMENODE -rm -r /user RegexpComparator ^rm: `/dir0/file0': No such file or directory rm: removing a nonexistent file (relative path) -fs NAMENODE -rm -r file0 -fs NAMENODE -rm -r /user RegexpComparator ^rm: `file0': No such file or directory rm: removing a file in hdfs:// path -fs NAMENODE -touchz hdfs:///file0 -fs NAMENODE -rm -r hdfs:///file0 -fs NAMENODE -rm -r hdfs:///* RegexpComparator ^Deleted hdfs:///file0 rm: removing a directory in hdfs:// path -fs NAMENODE -touchz hdfs:///dir0 -fs NAMENODE -rm -r hdfs:///dir0 -fs NAMENODE -rm -r hdfs:///* RegexpComparator ^Deleted hdfs:///dir0 rm: removing directories by globbing in hdfs:// path -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir1 -fs NAMENODE -mkdir hdfs:///dir2 -fs NAMENODE -mkdir hdfs:///dir3 -fs NAMENODE -rm -r hdfs:///dir* -fs NAMENODE -rm -r hdfs:///* RegexpComparator ^Deleted hdfs:///dir0 RegexpComparator ^Deleted hdfs:///dir1 RegexpComparator ^Deleted hdfs:///dir2 RegexpComparator ^Deleted hdfs:///dir3 rm: removing a nonexistent file or directory in hdfs:// path -fs NAMENODE -rm -r hdfs:///file0 -fs NAMENODE -rm -r hdfs:///* RegexpComparator ^rm: `hdfs:///file0': No such file or directory rm: removing directories without globbing in hdfs:// path -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir1 -fs NAMENODE -mkdir hdfs:///dir2 -fs NAMENODE -mkdir hdfs:///dir3 -fs NAMENODE -rm -r hdfs:///dir0 hdfs:///dir1 hdfs:///dir2 hdfs:///dir3 -fs NAMENODE -rm -r hdfs:///* RegexpComparator ^Deleted hdfs:///dir0 RegexpComparator ^Deleted hdfs:///dir1 RegexpComparator ^Deleted hdfs:///dir2 RegexpComparator ^Deleted hdfs:///dir3 rm: Test for Namenode's path - removing a file -fs NAMENODE -touchz NAMENODE/file0 -fs NAMENODE -rm -r NAMENODE/file0 -fs NAMENODE -rm -r NAMENODE/* RegexpComparator ^Deleted NAMENODE/file0 rm: Test for Namenode's path - removing a directory -fs NAMENODE -touchz NAMENODE/dir0 -fs NAMENODE -rm -r NAMENODE/dir0 -fs NAMENODE -rm -r NAMENODE/* RegexpComparator ^Deleted NAMENODE/dir0 rm: removing directories by globbing in Namenode's path -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir1 -fs NAMENODE -mkdir NAMENODE/dir2 -fs NAMENODE -mkdir NAMENODE/dir3 -fs NAMENODE -rm -r NAMENODE/dir* -fs NAMENODE -rm -r NAMENODE/* RegexpComparator ^Deleted NAMENODE/dir0 RegexpComparator ^Deleted NAMENODE/dir1 RegexpComparator ^Deleted NAMENODE/dir2 RegexpComparator ^Deleted NAMENODE/dir3 rm: removing a nonexistent file or directory in Namenode's path -fs NAMENODE -rm -r NAMENODE/file0 -fs NAMENODE -rm -r NAMENODE/* RegexpComparator ^rm: `NAMENODE/file0': No such file or directory rm: removing directories without globbing in Namenode's path -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir1 -fs NAMENODE -mkdir NAMENODE/dir2 -fs NAMENODE -mkdir NAMENODE/dir3 -fs NAMENODE -rm -r NAMENODE/dir0 NAMENODE/dir1 NAMENODE/dir2 NAMENODE/dir3 -fs NAMENODE -rm -r NAMENODE/* RegexpComparator ^Deleted NAMENODE/dir0 RegexpComparator ^Deleted NAMENODE/dir1 RegexpComparator ^Deleted NAMENODE/dir2 RegexpComparator ^Deleted NAMENODE/dir3 put: putting file into a file (absolute path) -fs NAMENODE -put CLITEST_DATA/data15bytes /data15bytes -fs NAMENODE -du /data15bytes -fs NAMENODE -rm /data15bytes RegexpComparator ^15\s+/data15bytes put: putting file into a file (relative path) -fs NAMENODE -mkdir -p dir -fs NAMENODE -touchz test -fs NAMENODE -put CLITEST_DATA/data15bytes data15bytes -fs NAMENODE -du data15bytes -fs NAMENODE -rm -r /user RegexpComparator ^15\s+data15bytes put: putting file into a directory(absolute path) -fs NAMENODE -mkdir -p /dir0/dir1/data -fs NAMENODE -put CLITEST_DATA/data15bytes /dir0/dir1/data --> -fs NAMENODE -du /dir0/dir1/data -fs NAMENODE -rm -r /dir0 RegexpComparator ^15\s+/dir0/dir1/data/data15bytes put: putting file into a directory(relative path) -fs NAMENODE -mkdir -p dir0/dir1/data -fs NAMENODE -put CLITEST_DATA/data15bytes dir0/dir1/data -fs NAMENODE -du dir0/dir1/data -fs NAMENODE -rm -r /user RegexpComparator ^15\s+dir0/dir1/data/data15bytes put: putting many files into an existing directory(absolute path) -fs NAMENODE -mkdir /dir0 -fs NAMENODE -put CLITEST_DATA/data15bytes CLITEST_DATA/data30bytes /dir0 -fs NAMENODE -du /dir0 -fs NAMENODE -rm -r /user RegexpComparator ^15\s+/dir0/data15bytes RegexpComparator ^30\s+/dir0/data30bytes put: putting many files into an existing directory(relative path) -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -put CLITEST_DATA/data15bytes CLITEST_DATA/data30bytes dir0 -fs NAMENODE -du dir0 -fs NAMENODE -rm -r /user RegexpComparator ^15\s+dir0/data15bytes RegexpComparator ^30\s+dir0/data30bytes put: putting non existent file(absolute path) -fs NAMENODE -mkdir -p dir -fs NAMENODE -touchz test -fs NAMENODE -put /user/wrongdata file -fs NAMENODE -rm -r /user TokenComparator put: `/user/wrongdata': No such file or directory put: putting non existent file(relative path) -fs NAMENODE -mkdir -p dir -fs NAMENODE -touchz test -fs NAMENODE -put wrongdata file -fs NAMENODE -rm -r /user TokenComparator put: `wrongdata': No such file or directory put: putting file into an already existing destination(absolute path) -fs NAMENODE -mkdir /user -fs NAMENODE -touchz /user/file0 -fs NAMENODE -put CLITEST_DATA/data15bytes /user/file0 -fs NAMENODE -rm -r /user TokenComparator put: `/user/file0': File exists put: putting file into an already existing destination with -f option(absolute path) -fs NAMENODE -mkdir /user -fs NAMENODE -touchz /user/file0 -fs NAMENODE -put -f CLITEST_DATA/data120bytes /user/file0 -fs NAMENODE -cat /user/file0 -fs NAMENODE -rm -r /user RegexpComparator 12345678901234 put: putting file into an already existing destination(relative path) -fs NAMENODE -mkdir -p dir -fs NAMENODE -touchz file0 -fs NAMENODE -put CLITEST_DATA/data15bytes file0 -fs NAMENODE -rm -r /user TokenComparator put: `file0': File exists put: putting many files into an existing file -fs NAMENODE -put CLITEST_DATA/data15bytes /data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes /data30bytes -fs NAMENODE -mkdir -p dir -fs NAMENODE -touchz file0 -fs NAMENODE -put /data15bytes /data30bytes file0 -fs NAMENODE -rm -r /user RegexpComparator ^put: `file0': Is not a directory put: putting many files into a non existent directory -fs NAMENODE -put CLITEST_DATA/data15bytes /data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes /data30bytes -fs NAMENODE -put /data15bytes /data30bytes wrongdir -fs NAMENODE -rm -r /user RegexpComparator ^put: `wrongdir': No such file or directory put: putting a local file into hdfs:// path -fs NAMENODE -put CLITEST_DATA/data15bytes hdfs:///data15bytes -fs NAMENODE -du hdfs:///data15bytes -fs NAMENODE -rm hdfs:///data15bytes RegexpComparator ^15\s+hdfs:///data15bytes put: putting file into a directory in hdfs:// path -fs NAMENODE -mkdir -p /dir1/data -fs NAMENODE -put CLITEST_DATA/data15bytes hdfs:///dir1/data -fs NAMENODE -du hdfs:///dir1/data/ -fs NAMENODE -rm -r hdfs:///dir1/data RegexpComparator ^15\s+hdfs:///dir1/data/data15bytes put: putting many local files into an existing directory in hdfs:// path -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -put CLITEST_DATA/data15bytes CLITEST_DATA/data30bytes hdfs:///dir0 -fs NAMENODE -du hdfs:///dir0 -fs NAMENODE -rm -r hdfs:///dir0 RegexpComparator ^15\s+hdfs:///dir0/data15bytes RegexpComparator ^30\s+hdfs:///dir0/data30bytes put: putting non existent file in hdfs:// path -fs NAMENODE -put /user/wrongdata hdfs:///file -fs NAMENODE -rm -r hdfs:///* TokenComparator put: `/user/wrongdata': No such file or directory put: putting local file into an already existing destination in hdfs:// path -fs NAMENODE -mkdir hdfs:///user/ -fs NAMENODE -touchz hdfs:///user/file0 -fs NAMENODE -put CLITEST_DATA/data15bytes hdfs:///user/file0 -fs NAMENODE -rm -r hdfs:///user TokenComparator put: `hdfs:///user/file0': File exists put: putting many local files into an existing file in hdfs:// path -fs NAMENODE -touchz hdfs:///file0 -fs NAMENODE -put CLITEST_DATA/data15bytes CLITEST_DATA/data30bytes hdfs:///file0 -fs NAMENODE -rm -r hdfs:///* RegexpComparator ^put: `hdfs:///file0': Is not a directory put: putting file into a non existent directory in hdfs:// path -fs NAMENODE -put CLITEST_DATA/data15bytes CLITEST_DATA/data30bytes hdfs:///wrongdir -fs NAMENODE -rm -r hdfs:///* RegexpComparator ^put: `hdfs:///wrongdir': No such file or directory put: putting a local file into in Namenode's path -fs NAMENODE -put CLITEST_DATA/data15bytes NAMENODE/data15bytes -fs NAMENODE -du NAMENODE/data15bytes -fs NAMENODE -rm NAMENODE/data15bytes RegexpComparator ^15\s+NAMENODE/data15bytes put: putting file into a directory in Namenode's path -fs NAMENODE -mkdir -p /dir1/data -fs NAMENODE -put CLITEST_DATA/data15bytes NAMENODE/dir1/data -fs NAMENODE -du NAMENODE/dir1/data -fs NAMENODE -rm -r NAMENODE/dir1/data RegexpComparator ^15\s+NAMENODE/dir1/data/data15bytes put: putting many local files into an existing directory in Namenode's path -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -put CLITEST_DATA/data15bytes CLITEST_DATA/data30bytes NAMENODE/dir0 -fs NAMENODE -du NAMENODE/dir0 -fs NAMENODE -rm -r NAMENODE/dir0 RegexpComparator ^15\s+NAMENODE/dir0/data15bytes RegexpComparator ^30\s+NAMENODE/dir0/data30bytes put: putting non existent file in Namenode's path -fs NAMENODE -put /user/wrongdata NAMENODE/file -fs NAMENODE -rm -r NAMENODE/* RegexpComparator ^put: `/user/wrongdata': No such file or directory put: putting local file into an already existing destination in Namenode's path -fs NAMENODE -mkdir NAMENODE/user/ -fs NAMENODE -touchz NAMENODE/user/file0 -fs NAMENODE -put CLITEST_DATA/data15bytes NAMENODE/user/file0 -fs NAMENODE -rm -r NAMENODE/user RegexpComparator ^put: `hdfs://\w+[-.a-z0-9]*:[0-9]+/user/file0': File exists put: putting many local files into an existing file in Namenode's path -fs NAMENODE -touchz NAMENODE/file0 -fs NAMENODE -put CLITEST_DATA/data15bytes CLITEST_DATA/data30bytes NAMENODE/file0 -fs NAMENODE -rm -r NAMENODE/* RegexpComparator ^put: `hdfs://\w+[-.a-z0-9]*:[0-9]+/file0': Is not a directory put: putting many files into a non existent directory in Namenode's path -fs NAMENODE -put CLITEST_DATA/data15bytes CLITEST_DATA/data30bytes NAMENODE/wrongdir -fs NAMENODE -rm -r NAMENODE/* RegexpComparator ^put: `hdfs://\w+[-.a-z0-9]*:[0-9]+/wrongdir': No such file or directory copyFromLocal: copying file into a file (absolute path) -fs NAMENODE -copyFromLocal CLITEST_DATA/data15bytes /data15bytes -fs NAMENODE -du /data15bytes -fs NAMENODE -rm /data15bytes RegexpComparator ^15\s+/data15bytes copyFromLocal: copying file into a file (relative path) -fs NAMENODE -mkdir -p dir -fs NAMENODE -touchz test -fs NAMENODE -copyFromLocal CLITEST_DATA/data15bytes data15bytes -fs NAMENODE -du data15bytes -fs NAMENODE -rm -r /user RegexpComparator ^15\s+data15bytes copyFromLocal: copying file into a directory(absolute path) -fs NAMENODE -mkdir -p /dir0/dir1/data -fs NAMENODE -copyFromLocal CLITEST_DATA/data15bytes /dir0/dir1/data -fs NAMENODE -du /dir0/dir1/data/* -fs NAMENODE -rm -r /dir0 RegexpComparator ^15\s+/dir0/dir1/data/data15bytes copyFromLocal: copying file into a directory(relative path) -fs NAMENODE -mkdir -p dir0/dir1/data -fs NAMENODE -copyFromLocal CLITEST_DATA/data15bytes dir0/dir1/data -fs NAMENODE -du dir0/dir1/data/* -fs NAMENODE -rm -r /user RegexpComparator ^15\s+dir0/dir1/data/data15bytes copyFromLocal: copying many files into an existing directory(absolute path) -fs NAMENODE -mkdir /dir0 -fs NAMENODE -copyFromLocal CLITEST_DATA/data15bytes CLITEST_DATA/data30bytes /dir0 -fs NAMENODE -du /dir0 -fs NAMENODE -rm -r /user RegexpComparator ^15\s+/dir0/data15bytes RegexpComparator ^30\s+/dir0/data30bytes copyFromLocal: copying many files into an existing directory(relative path) -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -copyFromLocal CLITEST_DATA/data15bytes CLITEST_DATA/data30bytes dir0 -fs NAMENODE -du dir0 -fs NAMENODE -rm -r /user RegexpComparator ^15\s+dir0/data15bytes RegexpComparator ^30\s+dir0/data30bytes copyFromLocal: copying non existent file(absolute path) -fs NAMENODE -mkdir -p dir -fs NAMENODE -touchz test -fs NAMENODE -copyFromLocal /user/wrongdata file -fs NAMENODE -rm -r /user TokenComparator copyFromLocal: `/user/wrongdata': No such file or directory copyFromLocal: copying non existent file(relative path) -fs NAMENODE -mkdir -p dir -fs NAMENODE -touchz test -fs NAMENODE -copyFromLocal wrongdata file -fs NAMENODE -rm -r /user TokenComparator copyFromLocal: `wrongdata': No such file or directory copyFromLocal: copying file into an already existing destination(absolute path) -fs NAMENODE -mkdir /user -fs NAMENODE -touchz /user/file0 -fs NAMENODE -copyFromLocal CLITEST_DATA/data15bytes /user/file0 -fs NAMENODE -rm -r /user TokenComparator copyFromLocal: `/user/file0': File exists copyFromLocal: copying file into an already existing destination with -f option(absolute path) -fs NAMENODE -mkdir /user -fs NAMENODE -touchz /user/file0 -fs NAMENODE -copyFromLocal -f CLITEST_DATA/data120bytes /user/file0 -fs NAMENODE -cat /user/file0 -fs NAMENODE -rm -r /user RegexpComparator 12345678901234 copyFromLocal: copying file into an already existing destination(relative path) -fs NAMENODE -mkdir -p dir -fs NAMENODE -touchz file0 -fs NAMENODE -copyFromLocal CLITEST_DATA/data15bytes file0 -fs NAMENODE -rm -r /user TokenComparator copyFromLocal: `file0': File exists copyFromLocal: copying many files into an existing file -fs NAMENODE -copyFromLocal CLITEST_DATA/data15bytes /data15bytes -fs NAMENODE -copyFromLocal CLITEST_DATA/data30bytes /data30bytes -fs NAMENODE -mkdir -p dir -fs NAMENODE -touchz file0 -fs NAMENODE -copyFromLocal /data15bytes /data30bytes file0 -fs NAMENODE -rm -r /user RegexpComparator ^copyFromLocal: `file0': Is not a directory copyFromLocal: copying many files into a non existent directory -fs NAMENODE -copyFromLocal CLITEST_DATA/data15bytes /data15bytes -fs NAMENODE -copyFromLocal CLITEST_DATA/data30bytes /data30bytes -fs NAMENODE -copyFromLocal /data15bytes /data30bytes wrongdir -fs NAMENODE -rm -r /user RegexpComparator ^copyFromLocal: `wrongdir': No such file or directory copyFromLocal: Test for hdfs:// path - copying local file into a hdfs://file -fs NAMENODE -copyFromLocal CLITEST_DATA/data15bytes hdfs:///data15bytes -fs NAMENODE -du hdfs:///data15bytes -fs NAMENODE -rm hdfs:///data15bytes RegexpComparator ^15\s+hdfs:///data15bytes copyFromLocal: Test for hdfs:// path - copying local file into a hdfs directory -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir0/dir1 -fs NAMENODE -mkdir hdfs:///dir0/dir1/data -fs NAMENODE -copyFromLocal CLITEST_DATA/data15bytes hdfs:///dir0/dir1/data/ -fs NAMENODE -du hdfs:///dir0/dir1/data/data15bytes -fs NAMENODE -rm -r hdfs:///dir0 RegexpComparator ^15\s+hdfs:///dir0/dir1/data/data15bytes copyFromLocal: Test for hdfs:// path copying many local files into an existing hdfs directory -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -copyFromLocal CLITEST_DATA/data15bytes CLITEST_DATA/data30bytes hdfs:///dir0 -fs NAMENODE -du hdfs:///dir0 -fs NAMENODE -rm -r hdfs:///dir0 RegexpComparator ^15\s+hdfs:///dir0/data15bytes RegexpComparator ^30\s+hdfs:///dir0/data30bytes copyFromLocal: Test for hdfs:// path - copying non existent file -fs NAMENODE -copyFromLocal /user/wrongdata hdfs:///file -fs NAMENODE -rm -r hdfs:///* TokenComparator copyFromLocal: `/user/wrongdata': No such file or directory copyFromLocal: Test for hdfs:// path - copying local file into an already existing destination -fs NAMENODE -mkdir hdfs:///user/ -fs NAMENODE -touchz hdfs:///user/file0 -fs NAMENODE -copyFromLocal CLITEST_DATA/data15bytes hdfs:///user/file0 -fs NAMENODE -rm -r hdfs:///user TokenComparator copyFromLocal: `hdfs:///user/file0': File exists copyFromLocal: Test for hdfs:// path - copying many local files into an existing file -fs NAMENODE -touchz hdfs:///file0 -fs NAMENODE -copyFromLocal CLITEST_DATA/data15bytes CLITEST_DATA/data30bytes hdfs:///file0 -fs NAMENODE -rm -r hdfs:///* RegexpComparator ^copyFromLocal: `hdfs:///file0': Is not a directory copyFromLocal: Test for hdfs:// path - copying many local files into a non existent directory -fs NAMENODE -copyFromLocal CLITEST_DATA/data15bytes CLITEST_DATA/data30bytes hdfs:///wrongdir -fs NAMENODE -rm -r hdfs:///* RegexpComparator ^copyFromLocal: `hdfs:///wrongdir': No such file or directory copyFromLocal: Test for Namenode's path - copying local file into a hdfs://file -fs NAMENODE -copyFromLocal CLITEST_DATA/data15bytes NAMENODE/data15bytes -fs NAMENODE -du NAMENODE/data15bytes -fs NAMENODE -rm NAMENODE/data15bytes RegexpComparator ^15\s+NAMENODE/data15bytes copyFromLocal: Test for Namenode's path - copying local file into a hdfs directory -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir0/dir1 -fs NAMENODE -mkdir NAMENODE/dir0/dir1/data -fs NAMENODE -copyFromLocal CLITEST_DATA/data15bytes NAMENODE/dir0/dir1/data/ -fs NAMENODE -du NAMENODE/dir0/dir1/data/data15bytes -fs NAMENODE -rm -r NAMENODE/dir0 RegexpComparator ^15\s+NAMENODE/dir0/dir1/data/data15bytes copyFromLocal: Test for Namenode's path copying many local files into an existing hdfs directory -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -copyFromLocal CLITEST_DATA/data15bytes CLITEST_DATA/data30bytes NAMENODE/dir0 -fs NAMENODE -du NAMENODE/dir0 -fs NAMENODE -rm -r NAMENODE/dir0 RegexpComparator ^15\s+NAMENODE/dir0/data15bytes RegexpComparator ^30\s+NAMENODE/dir0/data30bytes copyFromLocal: Test for Namenode's path - copying non existent file -fs NAMENODE -copyFromLocal /user/wrongdata NAMENODE/file -fs NAMENODE -rm -r NAMENODE/* TokenComparator copyFromLocal: `/user/wrongdata': No such file or directory copyFromLocal: Test for Namenode's path - copying local file into an already existing destination -fs NAMENODE -mkdir NAMENODE/user/ -fs NAMENODE -touchz NAMENODE/user/file0 -fs NAMENODE -copyFromLocal CLITEST_DATA/data15bytes NAMENODE/user/file0 -fs NAMENODE -rm -r NAMENODE/user RegexpComparator copyFromLocal: `hdfs://\w+[-.a-z0-9]*:[0-9]+/user/file0': File exists copyFromLocal: Test for Namenode's path - copying many local files into an existing file -fs NAMENODE -touchz NAMENODE/file0 -fs NAMENODE -copyFromLocal CLITEST_DATA/data15bytes CLITEST_DATA/data30bytes NAMENODE/file0 -fs NAMENODE -rm -r NAMENODE/* RegexpComparator ^copyFromLocal: `hdfs://\w+[-.a-z0-9]*:[0-9]+/file0': Is not a directory copyFromLocal: Test for Namenode's path - copying many local files into a non existent directory -fs NAMENODE -copyFromLocal CLITEST_DATA/data15bytes CLITEST_DATA/data30bytes NAMENODE/wrongdir -fs NAMENODE -rm -r NAMENODE/* RegexpComparator ^copyFromLocal: `hdfs://\w+[-.a-z0-9]*:[0-9]+/wrongdir': No such file or directory get: getting non existent(absolute path) -fs NAMENODE -get /user/file CLITEST_DATA/file -fs NAMENODE -rm -r /user RegexpComparator get: `.*': No such file or directory get: getting non existent file(relative path) -fs NAMENODE -get file CLITEST_DATA/file -fs NAMENODE -rm -r /user RegexpComparator get: `.*': No such file or directory get: Test for hdfs:// path - getting non existent -fs NAMENODE -get hdfs:///user/file CLITEST_DATA/file -fs NAMENODE -rm -r hdfs:///user RegexpComparator get: `.*': No such file or directory get: Test for Namenode's path - getting non existent -fs NAMENODE -get NAMENODE/user/file CLITEST_DATA/file -fs NAMENODE -rm -r NAMENODE/user RegexpComparator get: `.*': No such file or directory getmerge: basic -fs NAMENODE -mkdir -p /user/USERNAME/dir1 -fs NAMENODE -copyFromLocal CLITEST_DATA/data15bytes /user/USERNAME/dir1 -fs NAMENODE -copyFromLocal CLITEST_DATA/data30bytes /user/USERNAME/dir1 -fs NAMENODE -getmerge /user/USERNAME/dir1 CLITEST_DATA/file -cat CLITEST_DATA/file -fs NAMENODE -rm -r /user/USERNAME CLITEST_DATA/file rm data ExactComparator 12345678901234 12345678901234 12345678901234 getmerge: with file -fs NAMENODE -mkdir -p /user/USERNAME/dir1 -fs NAMENODE -copyFromLocal CLITEST_DATA/data15bytes /user/USERNAME/dir1 -fs NAMENODE -getmerge /user/USERNAME/dir1/data15bytes CLITEST_DATA/file -cat CLITEST_DATA/file -fs NAMENODE -rm -r /user/USERNAME CLITEST_DATA/file rm data ExactComparator 12345678901234 getmerge: with multiple files -fs NAMENODE -mkdir -p /user/USERNAME/dir1 -fs NAMENODE -copyFromLocal CLITEST_DATA/data15bytes /user/USERNAME/dir1 -fs NAMENODE -copyFromLocal CLITEST_DATA/data30bytes /user/USERNAME/dir1 -fs NAMENODE -getmerge /user/USERNAME/dir1/data15bytes /user/USERNAME/dir1/data30bytes CLITEST_DATA/file -cat CLITEST_DATA/file -fs NAMENODE -rm -r /user/USERNAME CLITEST_DATA/file rm data ExactComparator 12345678901234 12345678901234 12345678901234 getmerge: with newlines -fs NAMENODE -mkdir -p /user/USERNAME/dir1 -fs NAMENODE -copyFromLocal CLITEST_DATA/data15bytes /user/USERNAME/dir1 -fs NAMENODE -copyFromLocal CLITEST_DATA/data30bytes /user/USERNAME/dir1 -fs NAMENODE -getmerge -nl /user/USERNAME/dir1 CLITEST_DATA/file -cat CLITEST_DATA/file -fs NAMENODE -rm -r /user/USERNAME CLITEST_DATA/file rm data ExactComparator 12345678901234 12345678901234 12345678901234 getmerge: with multiple files and newlines -fs NAMENODE -mkdir -p /user/USERNAME/dir1 -fs NAMENODE -copyFromLocal CLITEST_DATA/data15bytes /user/USERNAME/dir1 -fs NAMENODE -copyFromLocal CLITEST_DATA/data30bytes /user/USERNAME/dir1 -fs NAMENODE -getmerge -nl /user/USERNAME/dir1/data15bytes /user/USERNAME/dir1/data30bytes CLITEST_DATA/file -cat CLITEST_DATA/file -fs NAMENODE -rm -r /user/USERNAME CLITEST_DATA/file rm data ExactComparator 12345678901234 12345678901234 12345678901234 cat: contents of file(absolute path) -fs NAMENODE -put CLITEST_DATA/data15bytes /data15bytes -fs NAMENODE -cat /data15bytes -fs NAMENODE -rm /data15bytes TokenComparator 12345678901234 cat: contents of file(relative path) -fs NAMENODE -mkdir -p dir -fs NAMENODE -touchz test -fs NAMENODE -put CLITEST_DATA/data15bytes data15bytes -fs NAMENODE -cat data15bytes -fs NAMENODE -rm -r /user TokenComparator 12345678901234 cat: contents of files(absolute path) using globbing -fs NAMENODE -mkdir /dir0 -fs NAMENODE -put CLITEST_DATA/data15bytes /dir0/data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes /dir0/data30bytes -fs NAMENODE -put CLITEST_DATA/data60bytes /dir0/data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes /dir0/data120bytes -fs NAMENODE -cat /dir0/data* -fs NAMENODE -rm -r /dir0 RegexpComparator 12345678901234.* cat: contents of files(relative path) using globbing -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -put CLITEST_DATA/data15bytes dir0/data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes dir0/data30bytes -fs NAMENODE -put CLITEST_DATA/data60bytes dir0/data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes dir0/data120bytes -fs NAMENODE -cat dir0/data* -fs NAMENODE -rm -r /user RegexpComparator 12345678901234.* cat: contents of files(absolute path) without globbing -fs NAMENODE -mkdir /dir0 -fs NAMENODE -put CLITEST_DATA/data15bytes /dir0/data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes /dir0/data30bytes -fs NAMENODE -put CLITEST_DATA/data60bytes /dir0/data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes /dir0/data120bytes -fs NAMENODE -cat /dir0/data15bytes /dir0/data30bytes /dir0/data60bytes /dir0/data120bytes -fs NAMENODE -rm -r /dir0 RegexpComparator 12345678901234.* cat: contents of files(relative path) without globbing -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -put CLITEST_DATA/data15bytes dir0/data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes dir0/data30bytes -fs NAMENODE -put CLITEST_DATA/data60bytes dir0/data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes dir0/data120bytes -fs NAMENODE -cat dir0/data15bytes dir0/data30bytes dir0/data60bytes dir0/data120bytes -fs NAMENODE -rm -r /user RegexpComparator 12345678901234.* cat: contents of file(absolute path) that does not exist -fs NAMENODE -cat /file RegexpComparator ^cat: `/file': No such file or directory cat: contents of file(relative path) that does not exist -fs NAMENODE -cat file RegexpComparator ^cat: `file': No such file or directory cat: contents of directory(absolute path) -fs NAMENODE -mkdir /dir1 -fs NAMENODE -cat /dir1 -fs NAMENODE -rm -r /dir1 RegexpComparator ^cat: `/dir1': Is a directory cat: contents of directory(relative path) -fs NAMENODE -mkdir -p dir1 -fs NAMENODE -cat dir1 -fs NAMENODE -rm -r dir1 RegexpComparator ^cat: `dir1': Is a directory cat: Test for hdfs:// path - content of file -fs NAMENODE -put CLITEST_DATA/data15bytes hdfs:///data15bytes -fs NAMENODE -cat hdfs:///data15bytes -fs NAMENODE -rm hdfs:///data15bytes TokenComparator 12345678901234 cat: Test for hdfs:// path - contents of files using globbing -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -put CLITEST_DATA/data15bytes hdfs:///dir0/data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes hdfs:///dir0/data30bytes -fs NAMENODE -put CLITEST_DATA/data60bytes hdfs:///dir0/data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes hdfs:///dir0/data120bytes -fs NAMENODE -cat hdfs:///dir0/data* -fs NAMENODE -rm -r hdfs:///dir0 RegexpComparator 12345678901234.* cat: Test for hdfs:// path - contents of files without globbing -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -put CLITEST_DATA/data15bytes hdfs:///dir0/data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes hdfs:///dir0/data30bytes -fs NAMENODE -put CLITEST_DATA/data60bytes hdfs:///dir0/data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes hdfs:///dir0/data120bytes -fs NAMENODE -cat hdfs:///dir0/data15bytes hdfs:///dir0/data30bytes hdfs:///dir0/data60bytes hdfs:///dir0/data120bytes -fs NAMENODE -rm -r hdfs:///dir0 RegexpComparator 12345678901234.* cat: Test for hdfs:// path - contents of file that does not exist -fs NAMENODE -cat hdfs:///file RegexpComparator ^cat: `hdfs:///file': No such file or directory cat: Test for hdfs:// path - contents of directory -fs NAMENODE -mkdir hdfs:///dir1 -fs NAMENODE -cat hdfs:///dir1 -fs NAMENODE -rm -r hdfs:///dir1 RegexpComparator ^cat: `hdfs:///dir1': Is a directory cat: Test for Namenode's path - content of file -fs NAMENODE -put CLITEST_DATA/data15bytes NAMENODE/data15bytes -fs NAMENODE -cat NAMENODE/data15bytes -fs NAMENODE -rm NAMENODE/data15bytes TokenComparator 12345678901234 cat: Test for Namenode's path - contents of files using globbing -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -put CLITEST_DATA/data15bytes NAMENODE/dir0/data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes NAMENODE/dir0/data30bytes -fs NAMENODE -put CLITEST_DATA/data60bytes NAMENODE/dir0/data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes NAMENODE/dir0/data120bytes -fs NAMENODE -cat NAMENODE/dir0/data* -fs NAMENODE -rm -r NAMENODE/dir0 RegexpComparator 12345678901234.* cat: Test for Namenode's path - contents of files without globbing -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -put CLITEST_DATA/data15bytes NAMENODE/dir0/data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes NAMENODE/dir0/data30bytes -fs NAMENODE -put CLITEST_DATA/data60bytes NAMENODE/dir0/data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes NAMENODE/dir0/data120bytes -fs NAMENODE -cat NAMENODE/dir0/data15bytes NAMENODE/dir0/data30bytes NAMENODE/dir0/data60bytes NAMENODE/dir0/data120bytes -fs NAMENODE -rm -r NAMENODE/dir0 RegexpComparator 12345678901234.* cat: Test for Namenode's path - contents of file that does not exist -fs NAMENODE -cat NAMENODE/file RegexpComparator ^cat: `NAMENODE/file': No such file or directory cat: Test for Namenode's path - contents of directory -fs NAMENODE -mkdir NAMENODE/dir1 -fs NAMENODE -cat NAMENODE/dir1 -fs NAMENODE -rm -r NAMENODE/dir1 RegexpComparator ^cat: `NAMENODE/dir1': Is a directory copyToLocal: non existent relative path -fs NAMENODE -copyToLocal file CLITEST_DATA/file -fs NAMENODE -rm -r /user RegexpComparator copyToLocal: `.*': No such file or directory copyToLocal: non existent absolute path -fs NAMENODE -copyToLocal /user/file CLITEST_DATA/file -fs NAMENODE -rm -r /user RegexpComparator copyToLocal: `.*': No such file or directory copyToLocal: Test for hdfs:// path - non existent file/directory -fs NAMENODE -copyToLocal hdfs:///file CLITEST_DATA/file -fs NAMENODE -rm -r hdfs:///* RegexpComparator copyToLocal: `.*': No such file or directory copyToLocal: Test for Namenode's path - non existent file/directory -fs NAMENODE -copyToLocal NAMENODE/file CLITEST_DATA/file -fs NAMENODE -rm -r NAMENODE/* RegexpComparator copyToLocal: `.*': No such file or directory checksum: checksum of files(relative path) using globbing -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -put CLITEST_DATA/data15bytes dir0/data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes dir0/data30bytes -fs NAMENODE -put CLITEST_DATA/data60bytes dir0/data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes dir0/data120bytes -fs NAMENODE -checksum dir0/data* -fs NAMENODE -rm -r /user RegexpComparator ^dir0/data120bytes\tMD5-of-0MD5-of-512CRC32C\t000002000000000000000000a58cdc3c0967fc8cddb7fed5960d06f2 RegexpComparator ^dir0/data15bytes\tMD5-of-0MD5-of-512CRC32C\t0000020000000000000000007267e9528002723a30939aefc238d665 RegexpComparator ^dir0/data30bytes\tMD5-of-0MD5-of-512CRC32C\t000002000000000000000000fc09371298117c4943cf089b4bd79c96 RegexpComparator ^dir0/data60bytes\tMD5-of-0MD5-of-512CRC32C\t000002000000000000000000009476431d851dd7b0a8d057a404d7b9 mkdir: creating directory (absolute path) -fs NAMENODE -mkdir /dir0 -fs NAMENODE -du -s /dir0 -fs NAMENODE -rm /user RegexpComparator ^0\s+/dir0 mkdir: creating directory (absolute path) -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir0/b/ -fs NAMENODE -du -s /dir0/b -fs NAMENODE -rm /user RegexpComparator ^0\s+/dir0/b mkdir: creating directory (relative path) -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -du -s dir0 -fs NAMENODE -rm /user RegexpComparator ^0\s+dir0 mkdir: creating many directories (absolute path) -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir1 -fs NAMENODE -mkdir /dir2 -fs NAMENODE -mkdir /dir3 -fs NAMENODE -du -s /dir* -fs NAMENODE -rm /dir* RegexpComparator ^0\s+/dir0 RegexpComparator ^0\s+/dir1 RegexpComparator ^0\s+/dir2 RegexpComparator ^0\s+/dir3 mkdir: creating many directories (relative path) -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -mkdir -p dir1 -fs NAMENODE -mkdir -p dir2 -fs NAMENODE -mkdir -p dir3 -fs NAMENODE -du -s dir* -fs NAMENODE -rm /user RegexpComparator ^0\s+dir0 RegexpComparator ^0\s+dir1 RegexpComparator ^0\s+dir2 RegexpComparator ^0\s+dir3 mkdir: creating a directory with the name of an already existing directory -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir0 -fs NAMENODE -rm -r /dir0 TokenComparator mkdir: `/dir0': File exists mkdir: creating a directory with the name of an already existing file -fs NAMENODE -put CLITEST_DATA/data15bytes data15bytes -fs NAMENODE -mkdir -p data15bytes -fs NAMENODE -rm -r data15bytes TokenComparator mkdir: `data15bytes': Is not a directory mkdir: Test for hdfs:// path - creating directory -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -du -s hdfs:///dir0 -fs NAMENODE -rm hdfs:///* RegexpComparator ^0\s+hdfs:///dir0 mkdir: Test for hdfs:// path - creating many directories -fs NAMENODE -mkdir hdfs:///dir0 hdfs:///dir1 hdfs:///dir2 hdfs:///dir3 -fs NAMENODE -du -s hdfs:///dir* -fs NAMENODE -rm hdfs:///dir* RegexpComparator ^0\s+hdfs:///dir0 RegexpComparator ^0\s+hdfs:///dir1 RegexpComparator ^0\s+hdfs:///dir2 RegexpComparator ^0\s+hdfs:///dir3 mkdir: Test for hdfs:// path - creating a directory with the name of an already existing directory -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -rm -r hdfs:///dir0 TokenComparator mkdir: `hdfs:///dir0': File exists mkdir: Test for hdfs:// path - creating a directory with the name of an already existing file -fs NAMENODE -put CLITEST_DATA/data15bytes hdfs:///data15bytes -fs NAMENODE -mkdir hdfs:///data15bytes -fs NAMENODE -rm -r hdfs:///data15bytes TokenComparator mkdir: `hdfs:///data15bytes': Is not a directory mkdir: Test for Namenode's path - creating directory -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -du -s NAMENODE/dir0 -fs NAMENODE -rm NAMENODE/* RegexpComparator ^0\s+NAMENODE/dir0 mkdir: Test for Namenode's path - creating many directories -fs NAMENODE -mkdir NAMENODE/dir0 NAMENODE/dir1 NAMENODE/dir2 NAMENODE/dir3 -fs NAMENODE -du -s NAMENODE/dir* -fs NAMENODE -rm NAMENODE/dir* RegexpComparator ^0\s+NAMENODE/dir0 RegexpComparator ^0\s+NAMENODE/dir1 RegexpComparator ^0\s+NAMENODE/dir2 RegexpComparator ^0\s+NAMENODE/dir3 mkdir: Test for NAMENODE path - creating a directory with the name of an already existing directory -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -rm -r NAMENODE/dir0 RegexpComparator mkdir: `hdfs://\w+[-.a-z0-9]*:[0-9]+/dir0': File exists mkdir: Test for Namenode's path - creating a directory with the name of an already existing file -fs NAMENODE -put CLITEST_DATA/data15bytes NAMENODE/data15bytes -fs NAMENODE -mkdir NAMENODE/data15bytes -fs NAMENODE -rm -r NAMENODE/data15bytes RegexpComparator mkdir: `hdfs://\w+[-.a-z0-9]*:[0-9]+/data15bytes': Is not a directory mkdir: Test create of directory with no parent and no -p fails -fs NAMENODE -rm -r -f dir0 -fs NAMENODE -mkdir dir0/dir1 -fs NAMENODE -rm -r dir0 RegexpComparator mkdir: `dir0/dir1': No such file or directory mkdir: Test recreate of existing directory fails -fs NAMENODE -rm -r -f dir0 -fs NAMENODE -mkdir -p dir0/dir1 -fs NAMENODE -mkdir dir0/dir1 -fs NAMENODE -rm -r dir0 RegexpComparator mkdir: `dir0/dir1': File exists mkdir: Test recreate of existing directory with -p succeeds -fs NAMENODE -rm -r -f dir0 -fs NAMENODE -mkdir -p dir0/dir1 -fs NAMENODE -mkdir -p dir0/dir1 -fs NAMENODE -rm -r dir0 ExactComparator setrep: existent file (absolute path) -fs NAMENODE -mkdir /dir0 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -setrep 2 /dir0/file0 -fs NAMENODE -rm -r /user RegexpComparator ^Replication 2 set: /dir0/file0 setrep: existent file (relative path) -fs NAMENODE -mkdir -p dir -fs NAMENODE -touchz file0 -fs NAMENODE -setrep 2 file0 -fs NAMENODE -rm -r /user RegexpComparator ^Replication 2 set: file0 setrep: existent directory (absolute path) -fs NAMENODE -mkdir /dir0 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -touchz /dir0/file1 -fs NAMENODE -setrep 2 /dir0 -fs NAMENODE -rm -r /user RegexpComparator ^Replication 2 set: /dir0/file0 RegexpComparator ^Replication 2 set: /dir0/file1 setrep: existent directory (relative path) -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -touchz dir0/file0 -fs NAMENODE -touchz dir0/file1 -fs NAMENODE -setrep 2 dir0 -fs NAMENODE -rm -r /user RegexpComparator ^Replication 2 set: dir0/file0 RegexpComparator ^Replication 2 set: dir0/file1 setrep: -R ignored for existing file -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -touchz dir0/file0 -fs NAMENODE -setrep -R 2 dir0/file0 -fs NAMENODE -rm -r /user RegexpComparator ^Replication 2 set: dir0/file0 setrep: non existent file (absolute path) -fs NAMENODE -setrep 2 /dir0/file -fs NAMENODE -rm -r /user RegexpComparator ^setrep: `/dir0/file': No such file or directory setrep: non existent file (relative path) -fs NAMENODE -setrep 2 file0 -fs NAMENODE -rm -r /user RegexpComparator ^setrep: `file0': No such file or directory setrep: Test for hdfs:// path - existent file -fs NAMENODE -mkdir hdfs:///dir0/ -fs NAMENODE -touchz hdfs:///dir0/file0 -fs NAMENODE -setrep 2 hdfs:///dir0/file0 -fs NAMENODE -rm -r hdfs:///* RegexpComparator ^Replication 2 set: hdfs:///dir0/file0 setrep: Test for hdfs:// path - existent directory -fs NAMENODE -mkdir hdfs:///dir0/ -fs NAMENODE -touchz hdfs:///dir0/file0 -fs NAMENODE -touchz hdfs:///dir0/file1 -fs NAMENODE -setrep 2 hdfs:///dir0 -fs NAMENODE -rm -r hdfs:///* RegexpComparator ^Replication 2 set: hdfs:///dir0/file0 RegexpComparator ^Replication 2 set: hdfs:///dir0/file1 setrep: Test for hdfs:// path - non existent file -fs NAMENODE -mkdir hdfs:///dir0/ -fs NAMENODE -setrep 2 hdfs:///dir0/file -fs NAMENODE -rm -r hdfs:///* RegexpComparator ^setrep: `hdfs:///dir0/file': No such file or directory setrep: Test for Namenode's path - existent file -fs NAMENODE -mkdir NAMENODE/dir0/ -fs NAMENODE -touchz NAMENODE/dir0/file0 -fs NAMENODE -setrep 2 NAMENODE/dir0/file0 -fs NAMENODE -rm -r NAMENODE/* RegexpComparator ^Replication 2 set: NAMENODE/dir0/file0 setrep: Test for Namenode's path - existent directory -fs NAMENODE -mkdir -p NAMENODE/dir0 -fs NAMENODE -touchz NAMENODE/dir0/file0 -fs NAMENODE -touchz NAMENODE/dir0/file1 -fs NAMENODE -setrep 2 NAMENODE/dir0 -fs NAMENODE -rm -r NAMENODE/* RegexpComparator ^Replication 2 set: NAMENODE/dir0/file0 RegexpComparator ^Replication 2 set: NAMENODE/dir0/file1 setrep: Test for Namenode's path - non existent file -fs NAMENODE -setrep 2 NAMENODE/dir0/file -fs NAMENODE -rm -r NAMENODE/* RegexpComparator ^setrep: `hdfs://\w+[-.a-z0-9]*:[0-9]+/dir0/file': No such file or directory setrep: invalid replication factor -- too high -fs NAMENODE -mkdir -p /dir0 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -setrep 1025 /dir0/file0 -fs NAMENODE -rm -r /user RegexpComparator ^setrep: Requested replication factor of 1025 exceeds maximum of [0-9]+ for /dir0/file0 setrep: invalid replication factor -- 0 -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -touchz dir0/file0 -fs NAMENODE -setrep 0 dir0/file0 -fs NAMENODE -rm -r /user RegexpComparator ^-setrep: replication must be >= 1 setrep: invalid replication factor -- NaN -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -touchz dir0/file0 -fs NAMENODE -setrep three dir0/file0 -fs NAMENODE -rm -r /user RegexpComparator ^setrep: Illegal replication, a positive integer expected touchz: touching file (absolute path) -fs NAMENODE -mkdir /user -fs NAMENODE -touchz /user/file0 -fs NAMENODE -du /user/file0 -fs NAMENODE -rm /user RegexpComparator ^0\s+/user/file0 touchz: touching file in non-existent directory -fs NAMENODE -touchz file0 RegexpComparator touchz: `file0': No such file or directory touchz: touching file(relative path) -fs NAMENODE -mkdir -p dir -fs NAMENODE -touchz file0 -fs NAMENODE -du file0 -fs NAMENODE -rm /user RegexpComparator ^0\s+file0 touchz: touching many files -fs NAMENODE -mkdir -p dir -fs NAMENODE -touchz file0 file1 file2 -fs NAMENODE -du file* -fs NAMENODE -rm /user RegexpComparator ^0( |\t)*file0 ^0( |\t)*file1 ^0( |\t)*file2 touchz: touching already existing file -fs NAMENODE -mkdir -p dir -fs NAMENODE -put CLITEST_DATA/data15bytes data15bytes -fs NAMENODE -touchz data15bytes -fs NAMENODE -rm data15bytes TokenComparator touchz: `data15bytes': Not a zero-length file touchz: Test for hdfs:// path - touching file -fs NAMENODE -mkdir -p hdfs:///user/ -fs NAMENODE -touchz hdfs:///user/file0 -fs NAMENODE -du hdfs:///user/file0 -fs NAMENODE -rm hdfs:///user RegexpComparator ^0\s+hdfs:///user/file0 touchz: Test for hdfs:// path - touching many files -fs NAMENODE -touchz hdfs:///file0 hdfs:///file1 hdfs:///file2 -fs NAMENODE -du hdfs:///file* -fs NAMENODE -rm hdfs:///user RegexpComparator ^0( |\t)*hdfs:///file0 ^0( |\t)*hdfs:///file1 ^0( |\t)*hdfs:///file2 touchz: Test for hdfs:// path - touching already existing file -fs NAMENODE -put CLITEST_DATA/data15bytes hdfs:///data15bytes -fs NAMENODE -touchz hdfs:///data15bytes -fs NAMENODE -rm hdfs:///data15bytes TokenComparator touchz: `hdfs:///data15bytes': Not a zero-length file touchz: Test for Namenode's path - touching file -fs NAMENODE -touchz NAMENODE/user/file0 -fs NAMENODE -du NAMENODE/user/file0 -fs NAMENODE -rm NAMENODE/user RegexpComparator ^0\s+NAMENODE/user/file0 touchz: Test for Namenode path - touching many files -fs NAMENODE -touchz NAMENODE/file0 NAMENODE/file1 NAMENODE/file2 -fs NAMENODE -du NAMENODE/file* -fs NAMENODE -rm NAMENODE/user RegexpComparator ^0\s+hdfs://\w+[-.a-z0-9]*:[0-9]+/file0 ^0\s+hdfs://\w+[-.a-z0-9]*:[0-9]+/file1 ^0\s+hdfs://\w+[-.a-z0-9]*:[0-9]+/file2 touchz: Test for Namenode's path - touching already existing file -fs NAMENODE -put CLITEST_DATA/data15bytes NAMENODE/data15bytes -fs NAMENODE -touchz NAMENODE/data15bytes -fs NAMENODE -rm NAMENODE/data15bytes RegexpComparator touchz: `hdfs://\w+[-.a-z0-9]*:[0-9]+/data15bytes': Not a zero-length file test: non existent file (absolute path) -fs NAMENODE -test -z /dir0/file -fs NAMENODE -rm -r /user ExactComparator test: non existent file (relative path) -fs NAMENODE -test -z file -fs NAMENODE -rm -r /user ExactComparator test: non existent directory (absolute path) -fs NAMENODE -test -d /dir -fs NAMENODE -rm -r /user ExactComparator test: non existent directory (relative path) -fs NAMENODE -test -d dir0 -fs NAMENODE -rm -r /user ExactComparator test: Test for hdfs:// path - non existent file -fs NAMENODE -test -z hdfs:///dir0/file -fs NAMENODE -rm -r hdfs:///dir0 ExactComparator test: Test for hdfs:// path - non existent directory -fs NAMENODE -test -d hdfs:///dir -fs NAMENODE -rm -r hdfs:///dir ExactComparator test: Test for Namenode's path - non existent file -fs NAMENODE -test -z NAMENODE/dir0/file -fs NAMENODE -rm -r NAMENODE/dir0 ExactComparator test: Test for Namenode's path - non existent directory -fs NAMENODE -test -d NAMENODE/dir -fs NAMENODE -rm -r NAMENODE/dir ExactComparator stat: statistics about file(absolute path) -fs NAMENODE -put CLITEST_DATA/data60bytes /data60bytes -fs NAMENODE -stat "%n-%b" /data60bytes -fs NAMENODE -rm -r /data60bytes TokenComparator data60bytes-60 stat: statistics about file(relative path) -fs NAMENODE -mkdir -p dir -fs NAMENODE -touchz test -fs NAMENODE -put CLITEST_DATA/data60bytes data60bytes -fs NAMENODE -stat "%n-%b" data60bytes -fs NAMENODE -rm -r /user TokenComparator data60bytes-60 stat: statistics about directory(absolute path) -fs NAMENODE -mkdir /dirtest -fs NAMENODE -stat "%n-%b-%o" /dirtest -fs NAMENODE -rm -r /dirtest TokenComparator dirtest-0-0 stat: statistics about directory(relative path) -fs NAMENODE -mkdir -p dirtest -fs NAMENODE -stat "%n-%b-%o" dirtest -fs NAMENODE -rm -r /user TokenComparator dirtest-0-0 stat: statistics about files (absolute path) using globbing -fs NAMENODE -mkdir /dir0 -fs NAMENODE -put CLITEST_DATA/data15bytes /dir0/data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes /dir0/data30bytes -fs NAMENODE -put CLITEST_DATA/data60bytes /dir0/data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes /dir0/data120bytes -fs NAMENODE -mkdir /dir0/datadir -fs NAMENODE -stat "%n-%b" /dir0/data* -fs NAMENODE -rm -r /dir0 TokenComparator data15bytes-15 TokenComparator data30bytes-30 TokenComparator data60bytes-60 TokenComparator data120bytes-120 TokenComparator datadir-0 stat: statistics about files (relative path) using globbing -fs NAMENODE -mkdir -p dir -fs NAMENODE -touchz test -fs NAMENODE -put CLITEST_DATA/data15bytes data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes data30bytes -fs NAMENODE -put CLITEST_DATA/data60bytes data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes data120bytes -fs NAMENODE -mkdir -p datadir -fs NAMENODE -stat "%n-%b" data* -fs NAMENODE -rm -r /user TokenComparator data15bytes-15 TokenComparator data30bytes-30 TokenComparator data60bytes-60 TokenComparator data120bytes-120 TokenComparator datadir-0 stat: statistics about file or directory(absolute path) that does not exist -fs NAMENODE -stat /file RegexpComparator ^stat: `/file': No such file or directory stat: statistics about file or directory(relative path) that does not exist -fs NAMENODE -stat file1 RegexpComparator ^stat: `file1': No such file or directory stat: Test for hdfs:// path - statistics about file -fs NAMENODE -put CLITEST_DATA/data60bytes hdfs:///data60bytes -fs NAMENODE -stat "%n-%b" hdfs:///data60bytes -fs NAMENODE -rm -r hdfs:///data60bytes TokenComparator data60bytes-60 stat: Test for hdfs:// path - statistics about directory -fs NAMENODE -mkdir hdfs:///dirtest -fs NAMENODE -stat "%n-%b-%o" hdfs:///dirtest -fs NAMENODE -rm -r hdfs:///dirtest TokenComparator dirtest-0-0 stat: Test for hdfs:// path - statistics about files using globbing -fs NAMENODE -mkdir /dir0 -fs NAMENODE -put CLITEST_DATA/data15bytes hdfs:///dir0/data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes hdfs:///dir0/data30bytes -fs NAMENODE -put CLITEST_DATA/data60bytes hdfs:///dir0/data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes hdfs:///dir0/data120bytes -fs NAMENODE -mkdir -p hdfs:///dir0/datadir -fs NAMENODE -stat "%n-%b" hdfs:///dir0/data* -fs NAMENODE -rm -r hdfs:///dir0 TokenComparator data15bytes-15 TokenComparator data30bytes-30 TokenComparator data60bytes-60 TokenComparator data120bytes-120 TokenComparator datadir-0 stat: Test for hdfs:// path - statistics about file or directory that does not exist -fs NAMENODE -stat hdfs:///file RegexpComparator ^stat: `hdfs:///file': No such file or directory stat: Test for Namenode's path - statistics about file -fs NAMENODE -put CLITEST_DATA/data60bytes NAMENODE/data60bytes -fs NAMENODE -stat "%n-%b" NAMENODE/data60bytes -fs NAMENODE -rm -r NAMENODE/data60bytes TokenComparator data60bytes-60 stat: Test for Namenode's path - statistics about directory -fs NAMENODE -mkdir NAMENODE/dirtest -fs NAMENODE -stat "%n-%b-%o" NAMENODE/dirtest -fs NAMENODE -rm -r NAMENODE/dirtest TokenComparator dirtest-0-0 stat: Test for Namenode's path - statistics about files using globbing -fs NAMENODE -mkdir /dir0 -fs NAMENODE -put CLITEST_DATA/data15bytes NAMENODE/dir0/data15bytes -fs NAMENODE -put CLITEST_DATA/data30bytes NAMENODE/dir0/data30bytes -fs NAMENODE -put CLITEST_DATA/data60bytes NAMENODE/dir0/data60bytes -fs NAMENODE -put CLITEST_DATA/data120bytes NAMENODE/dir0/data120bytes -fs NAMENODE -mkdir -p NAMENODE/dir0/datadir -fs NAMENODE -stat "%n-%b" NAMENODE/dir0/data* -fs NAMENODE -rm -r NAMENODE/dir0 TokenComparator data15bytes-15 TokenComparator data30bytes-30 TokenComparator data60bytes-60 TokenComparator data120bytes-120 TokenComparator datadir-0 stat: Test for Namenode's path - statistics about file or directory that does not exist -fs NAMENODE -stat NAMENODE/file RegexpComparator ^stat: `hdfs://\w+[-.a-z0-9]*:[0-9]+/file': No such file or directory tail: contents of file(absolute path) -fs NAMENODE -put CLITEST_DATA/data15bytes /data15bytes -fs NAMENODE -tail /data15bytes -fs NAMENODE -rm /user TokenComparator 12345678901234 tail: contents of file(relative path) -fs NAMENODE -mkdir -p dir -fs NAMENODE -touchz test -fs NAMENODE -put CLITEST_DATA/data15bytes data15bytes -fs NAMENODE -tail data15bytes -fs NAMENODE -rm -r /user TokenComparator 12345678901234 tail: contents of files(absolute path) using globbing -fs NAMENODE -touchz /file1 -fs NAMENODE -touchz /file2 -fs NAMENODE -touchz /file3 -fs NAMENODE -touchz /file4 -fs NAMENODE -tail /file* -fs NAMENODE -rm -r /user RegexpComparator ^tail: `/file\*': No such file or directory tail: contents of files(relative path) using globbing -fs NAMENODE -touchz file1 -fs NAMENODE -touchz file2 -fs NAMENODE -touchz file3 -fs NAMENODE -touchz file4 -fs NAMENODE -tail file* -fs NAMENODE -rm -r /user RegexpComparator ^tail: `file\*': No such file or directory tail: contents of file(absolute path) that does not exist -fs NAMENODE -tail /file RegexpComparator ^tail: `/file': No such file or directory tail: contents of file(relative path) that does not exist -fs NAMENODE -tail file1 RegexpComparator ^tail: `file1': No such file or directory tail: contents of directory(absolute path) -fs NAMENODE -mkdir /dir1 -fs NAMENODE -tail /dir1 -fs NAMENODE -rm -r /dir1 RegexpComparator ^tail: `/dir1': Is a directory tail: contents of directory(relative path) -fs NAMENODE -mkdir -p dir1 -fs NAMENODE -tail dir1 -fs NAMENODE -rm -r dir1 RegexpComparator ^tail: `dir1': Is a directory tail: Test for hdfs:// path - contents of file -fs NAMENODE -put CLITEST_DATA/data15bytes hdfs:///data15bytes -fs NAMENODE -tail hdfs:///data15bytes -fs NAMENODE -rm hdfs:///* TokenComparator 12345678901234 tail: Test for hdfs:// path - contents of files using globbing -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -touchz hdfs:///file2 -fs NAMENODE -touchz hdfs:///file3 -fs NAMENODE -touchz hdfs:///file4 -fs NAMENODE -tail hdfs:///file* -fs NAMENODE -rm -r hdfs:///* RegexpComparator ^tail: `hdfs:///file\*': No such file or directory tail: Test for hdfs:// path - contents of file that does not exist -fs NAMENODE -tail hdfs:///file RegexpComparator ^tail: `hdfs:///file': No such file or directory tail: Test for hdfs:// path - contents of directory -fs NAMENODE -mkdir hdfs:///dir1 -fs NAMENODE -tail hdfs:///dir1 -fs NAMENODE -rm -r hdfs:///dir1 RegexpComparator ^tail: `hdfs:///dir1': Is a directory tail: Test for Namenode's path - contents of file -fs NAMENODE -put CLITEST_DATA/data15bytes NAMENODE/data15bytes -fs NAMENODE -tail NAMENODE/data15bytes -fs NAMENODE -rm NAMENODE/* TokenComparator 12345678901234 tail: Test for Namenode's path - contents of files using globbing -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -touchz NAMENODE/file2 -fs NAMENODE -touchz NAMENODE/file3 -fs NAMENODE -touchz NAMENODE/file4 -fs NAMENODE -tail NAMENODE/file* -fs NAMENODE -rm -r NAMENODE/* RegexpComparator ^tail: `hdfs://\w+[-.a-z0-9]*:[0-9]+/file\*': No such file or directory tail: Test for Namenode's path - contents of file that does not exist -fs NAMENODE -tail NAMENODE/file RegexpComparator ^tail: `hdfs://\w+[-.a-z0-9]*:[0-9]+/file': No such file or directory tail: Test for Namenode's path - contents of directory -fs NAMENODE -mkdir NAMENODE/dir1 -fs NAMENODE -tail NAMENODE/dir1 -fs NAMENODE -rm -r NAMENODE/dir1 RegexpComparator ^tail: `hdfs://\w+[-.a-z0-9]*:[0-9]+/dir1': Is a directory count: file using absolute path -fs NAMENODE -touchz /file1 -fs NAMENODE -count /file1 -fs NAMENODE -rm /file1 RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 /file1 count: file using relative path -fs NAMENODE -mkdir -p dir -fs NAMENODE -touchz file1 -fs NAMENODE -count file1 -fs NAMENODE -rm file1 RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 file1 count: directory using absolute path -fs NAMENODE -mkdir /dir1 -fs NAMENODE -count /dir1 -fs NAMENODE -rm -r /dir1 RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 /dir1 count: directory using relative path -fs NAMENODE -mkdir -p dir1 -fs NAMENODE -count dir1 -fs NAMENODE -rm -r dir1 RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 dir1 count: absolute path to file/directory that does not exist -fs NAMENODE -count /file1 TokenComparator count: `/file1': No such file or directory count: relative path to file/directory that does not exist -fs NAMENODE -count file1 TokenComparator count: `file1': No such file or directory count: absolute path to multiple files using globbing -fs NAMENODE -touchz /file1 -fs NAMENODE -touchz /file2 -fs NAMENODE -touchz /file3 -fs NAMENODE -touchz /file4 -fs NAMENODE -count /file* -fs NAMENODE -rm -r /file* RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 /file1 RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 /file2 RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 /file3 RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 /file4 count: relative path to multiple files using globbing -fs NAMENODE -touchz file1 -fs NAMENODE -touchz file2 -fs NAMENODE -touchz file3 -fs NAMENODE -touchz file4 -fs NAMENODE -count file* -fs NAMENODE -rm -r /user RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 file1 RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 file2 RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 file3 RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 file4 count: absolute path to multiple files without globbing -fs NAMENODE -touchz /file1 -fs NAMENODE -touchz /file2 -fs NAMENODE -touchz /file3 -fs NAMENODE -touchz /file4 -fs NAMENODE -count /file1 /file2 /file3 /file4 -fs NAMENODE -rm -r /file* RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 /file1 RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 /file2 RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 /file3 RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 /file4 count: relative path to multiple files without globbing -fs NAMENODE -mkdir -p dir -fs NAMENODE -touchz file1 -fs NAMENODE -touchz file2 -fs NAMENODE -touchz file3 -fs NAMENODE -touchz file4 -fs NAMENODE -count file1 file2 file3 file4 -fs NAMENODE -rm -r /user RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 file1 RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 file2 RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 file3 RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 file4 count: absolute path to multiple directories using globbing -fs NAMENODE -mkdir /dir1 -fs NAMENODE -mkdir /dir2 -fs NAMENODE -mkdir /dir3 -fs NAMENODE -mkdir /dir4 -fs NAMENODE -count /dir* -fs NAMENODE -rm -r /dir* RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 /dir1 RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 /dir2 RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 /dir3 RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 /dir4 count: relative path to multiple directories using globbing -fs NAMENODE -mkdir -p dir1 -fs NAMENODE -mkdir -p dir2 -fs NAMENODE -mkdir -p dir3 -fs NAMENODE -mkdir -p dir4 -fs NAMENODE -count dir* -fs NAMENODE -rm -r /user RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 dir1 RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 dir2 RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 dir3 RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 dir4 count: absolute path to multiple directories without globbing -fs NAMENODE -mkdir /dir1 -fs NAMENODE -mkdir /dir2 -fs NAMENODE -mkdir /dir3 -fs NAMENODE -mkdir /dir4 -fs NAMENODE -count /dir1 /dir2 /dir3 /dir4 -fs NAMENODE -rm -r /dir* RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 /dir1 RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 /dir2 RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 /dir3 RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 /dir4 count: relative path to multiple directories without globbing -fs NAMENODE -mkdir -p dir1 -fs NAMENODE -mkdir -p dir2 -fs NAMENODE -mkdir -p dir3 -fs NAMENODE -mkdir -p dir4 -fs NAMENODE -count dir1 dir2 dir3 dir4 -fs NAMENODE -rm -r /user RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 dir1 RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 dir2 RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 dir3 RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 dir4 count: file using absolute path with -q option -fs NAMENODE -touchz /file1 -fs NAMENODE -count -q /file1 -fs NAMENODE -rm /file1 RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 /file1 count: file using relative path with -q option -fs NAMENODE -mkdir -p dir -fs NAMENODE -touchz file1 -fs NAMENODE -count -q file1 -fs NAMENODE -rm file1 RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 file1 count: directory using absolute path with -q option -fs NAMENODE -mkdir /dir1 -fs NAMENODE -setQuota 10 /dir1 -fs NAMENODE -setSpaceQuota 1m /dir1 -fs NAMENODE -count -q /dir1 -fs NAMENODE -rm -r /dir1 RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 /dir1 setSpaceQuota -storageType: directory with quota by storage type -fs NAMENODE -mkdir /ttt -fs NAMENODE -setSpaceQuota 1m -storageType DISK /ttt -fs NAMENODE -count -q -t DISK /ttt -fs NAMENODE -rm -r /ttt RegexpComparator ( |\t)*1048576( |\t)*1048576 /ttt clrSpaceQuota -storageType: directory quota by storage type -fs NAMENODE -mkdir /ttt -fs NAMENODE -setSpaceQuota 1m -storageType DISK /ttt -fs NAMENODE -count -q -t DISK /ttt -fs NAMENODE -clrSpaceQuota -storageType DISK /ttt -fs NAMENODE -count -q -t DISK /ttt -fs NAMENODE -rm -r /ttt RegexpComparator ( |\t)*none( |\t)*inf /ttt count: directory using relative path with -q option -fs NAMENODE -mkdir -p dir1 -fs NAMENODE -setQuota 10 dir1 -fs NAMENODE -setSpaceQuota 1m dir1 -fs NAMENODE -count -q dir1 -fs NAMENODE -rm -r dir1 RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 dir1 count: absolute path to file/directory that does not exist with -q option -fs NAMENODE -count -q /file1 TokenComparator count: `/file1': No such file or directory count: relative path to file/directory that does not exist with -q option -fs NAMENODE -count -q file1 TokenComparator count: `file1': No such file or directory count: absolute path to multiple files using globbing with -q option -fs NAMENODE -touchz /file1 -fs NAMENODE -touchz /file2 -fs NAMENODE -touchz /file3 -fs NAMENODE -touchz /file4 -fs NAMENODE -count -q /file* -fs NAMENODE -rm -r /file* RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 /file1 RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 /file2 RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 /file3 RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 /file4 count: relative path to multiple files using globbing with -q option -fs NAMENODE -touchz file1 -fs NAMENODE -touchz file2 -fs NAMENODE -touchz file3 -fs NAMENODE -touchz file4 -fs NAMENODE -count -q file* -fs NAMENODE -rm -r /user RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 file1 RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 file2 RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 file3 RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 file4 count: absolute path to multiple files without globbing with -q option -fs NAMENODE -touchz /file1 -fs NAMENODE -touchz /file2 -fs NAMENODE -touchz /file3 -fs NAMENODE -touchz /file4 -fs NAMENODE -count -q /file1 /file2 /file3 /file4 -fs NAMENODE -rm -r /file* RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 /file1 RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 /file2 RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 /file3 RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 /file4 count: relative path to multiple files without globbing with -q option -fs NAMENODE -mkdir -p dir -fs NAMENODE -touchz file1 -fs NAMENODE -touchz file2 -fs NAMENODE -touchz file3 -fs NAMENODE -touchz file4 -fs NAMENODE -count -q file1 file2 file3 file4 -fs NAMENODE -rm -r /user RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 file1 RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 file2 RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 file3 RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 file4 count: absolute path to multiple directories using globbing with -q option -fs NAMENODE -mkdir /dir1 -fs NAMENODE -mkdir /dir2 -fs NAMENODE -mkdir /dir3 -fs NAMENODE -mkdir /dir4 -fs NAMENODE -setQuota 10 /dir1 -fs NAMENODE -setSpaceQuota 1m /dir1 -fs NAMENODE -setQuota 10 /dir2 -fs NAMENODE -setSpaceQuota 1m /dir2 -fs NAMENODE -setQuota 10 /dir3 -fs NAMENODE -setSpaceQuota 1m /dir3 -fs NAMENODE -setQuota 10 /dir4 -fs NAMENODE -setSpaceQuota 1m /dir4 -fs NAMENODE -count -q /dir* -fs NAMENODE -rm -r /dir* RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 /dir1 RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 /dir2 RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 /dir3 RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 /dir4 count: relative path to multiple directories using globbing with -q option -fs NAMENODE -mkdir -p dir1 -fs NAMENODE -mkdir -p dir2 -fs NAMENODE -mkdir -p dir3 -fs NAMENODE -mkdir -p dir4 -fs NAMENODE -setQuota 10 dir1 -fs NAMENODE -setSpaceQuota 1m dir1 -fs NAMENODE -setQuota 10 dir2 -fs NAMENODE -setSpaceQuota 1m dir2 -fs NAMENODE -setQuota 10 dir3 -fs NAMENODE -setSpaceQuota 1m dir3 -fs NAMENODE -setQuota 10 dir4 -fs NAMENODE -setSpaceQuota 1m dir4 -fs NAMENODE -count -q dir* -fs NAMENODE -rm -r /user RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 dir1 RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 dir2 RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 dir3 RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 dir4 count: absolute path to multiple directories without globbing with -q option -fs NAMENODE -mkdir /dir1 -fs NAMENODE -mkdir /dir2 -fs NAMENODE -mkdir /dir3 -fs NAMENODE -mkdir /dir4 -fs NAMENODE -setQuota 10 /dir1 -fs NAMENODE -setSpaceQuota 1m /dir1 -fs NAMENODE -setQuota 10 /dir2 -fs NAMENODE -setSpaceQuota 1m /dir2 -fs NAMENODE -setQuota 10 /dir3 -fs NAMENODE -setSpaceQuota 1m /dir3 -fs NAMENODE -setQuota 10 /dir4 -fs NAMENODE -setSpaceQuota 1m /dir4 -fs NAMENODE -count -q /dir1 /dir2 /dir3 /dir4 -fs NAMENODE -rm -r /dir* RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 /dir1 RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 /dir2 RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 /dir3 RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 /dir4 count: relative path to multiple directories without globbing with -q option -fs NAMENODE -mkdir -p dir1 -fs NAMENODE -mkdir -p dir2 -fs NAMENODE -mkdir -p dir3 -fs NAMENODE -mkdir -p dir4 -fs NAMENODE -setQuota 10 dir1 -fs NAMENODE -setSpaceQuota 1m dir1 -fs NAMENODE -setQuota 10 dir2 -fs NAMENODE -setSpaceQuota 1m dir2 -fs NAMENODE -setQuota 10 dir3 -fs NAMENODE -setSpaceQuota 1m dir3 -fs NAMENODE -setQuota 10 dir4 -fs NAMENODE -setSpaceQuota 1m dir4 -fs NAMENODE -count -q dir1 dir2 dir3 dir4 -fs NAMENODE -rm -r /user RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 dir1 RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 dir2 RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 dir3 RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 dir4 count: Test for file using hdfs:// path -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -count hdfs:///file1 -fs NAMENODE -rm hdfs:///file1 RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 hdfs:///file1 count: Test for directory using hdfs:// path -fs NAMENODE -mkdir hdfs:///dir1 -fs NAMENODE -count hdfs:///dir1 -fs NAMENODE -rm -r hdfs:///dir1 RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 hdfs:///dir1 count: Test for hdfs:// path - file/directory that does not exist -fs NAMENODE -count hdfs:///file1 TokenComparator count: `hdfs:///file1': No such file or directory count: Test for hdfs:// path - multiple files using globbing -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -touchz hdfs:///file2 -fs NAMENODE -touchz hdfs:///file3 -fs NAMENODE -touchz hdfs:///file4 -fs NAMENODE -count hdfs:///file* -fs NAMENODE -rm -r hdfs:///file* RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 hdfs:///file1 RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 hdfs:///file2 RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 hdfs:///file3 RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 hdfs:///file4 count: Test for hdfs:// path - multiple files without globbing -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -touchz hdfs:///file2 -fs NAMENODE -touchz hdfs:///file3 -fs NAMENODE -touchz hdfs:///file4 -fs NAMENODE -count hdfs:///file1 hdfs:///file2 hdfs:///file3 hdfs:///file4 -fs NAMENODE -rm -r hdfs:///file* RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 hdfs:///file1 RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 hdfs:///file2 RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 hdfs:///file3 RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 hdfs:///file4 count: Test for hdfs:// path - multiple directories using globbing -fs NAMENODE -mkdir hdfs:///dir1 -fs NAMENODE -mkdir hdfs:///dir2 -fs NAMENODE -mkdir hdfs:///dir3 -fs NAMENODE -mkdir hdfs:///dir4 -fs NAMENODE -count hdfs:///dir* -fs NAMENODE -rm -r hdfs:///dir* RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 hdfs:///dir1 RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 hdfs:///dir2 RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 hdfs:///dir3 RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 hdfs:///dir4 count: Test for hdfs:// path - multiple directories without globbing -fs NAMENODE -mkdir hdfs:///dir1 -fs NAMENODE -mkdir hdfs:///dir2 -fs NAMENODE -mkdir hdfs:///dir3 -fs NAMENODE -mkdir hdfs:///dir4 -fs NAMENODE -count hdfs:///dir1 hdfs:///dir2 hdfs:///dir3 hdfs:///dir4 -fs NAMENODE -rm -r hdfs:///dir* RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 hdfs:///dir1 RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 hdfs:///dir2 RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 hdfs:///dir3 RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 hdfs:///dir4 count: Test for file using hdfs:// path with -q option -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -count -q hdfs:///file1 -fs NAMENODE -rm hdfs:///file1 RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 hdfs:///file1 count: Test for directory using hdfs:// path with -q option -fs NAMENODE -mkdir hdfs:///dir1 -fs NAMENODE -setQuota 10 hdfs:///dir1 -fs NAMENODE -setSpaceQuota 1m hdfs:///dir1 -fs NAMENODE -count -q hdfs:///dir1 -fs NAMENODE -rm -r hdfs:///dir1 RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 hdfs:///dir1 count: Test for hdfs:// path - file/directory that does not exist with -q option -fs NAMENODE -count -q hdfs:///file1 TokenComparator count: `hdfs:///file1': No such file or directory count: Test for hdfs:// path - multiple files using globbing with -q option -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -touchz hdfs:///file2 -fs NAMENODE -touchz hdfs:///file3 -fs NAMENODE -touchz hdfs:///file4 -fs NAMENODE -count -q hdfs:///file* -fs NAMENODE -rm -r hdfs:///file* RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 hdfs:///file1 RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 hdfs:///file2 RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 hdfs:///file3 RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 hdfs:///file4 count: Test for hdfs:// path - multiple files without globbing with -q option -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -touchz hdfs:///file2 -fs NAMENODE -touchz hdfs:///file3 -fs NAMENODE -touchz hdfs:///file4 -fs NAMENODE -count -q hdfs:///file1 hdfs:///file2 hdfs:///file3 hdfs:///file4 -fs NAMENODE -rm -r hdfs:///file* RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 hdfs:///file1 RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 hdfs:///file2 RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 hdfs:///file3 RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 hdfs:///file4 count: Test for hdfs:// path - multiple directories using globbing with -q option -fs NAMENODE -mkdir hdfs:///dir1 -fs NAMENODE -mkdir hdfs:///dir2 -fs NAMENODE -mkdir hdfs:///dir3 -fs NAMENODE -mkdir hdfs:///dir4 -fs NAMENODE -setQuota 10 hdfs:///dir1 -fs NAMENODE -setSpaceQuota 1m hdfs:///dir1 -fs NAMENODE -setQuota 10 hdfs:///dir2 -fs NAMENODE -setSpaceQuota 1m hdfs:///dir2 -fs NAMENODE -setQuota 10 hdfs:///dir3 -fs NAMENODE -setSpaceQuota 1m hdfs:///dir3 -fs NAMENODE -setQuota 10 hdfs:///dir4 -fs NAMENODE -setSpaceQuota 1m hdfs:///dir4 -fs NAMENODE -count -q hdfs:///dir* -fs NAMENODE -rm -r hdfs:///dir* RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 hdfs:///dir1 RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 hdfs:///dir2 RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 hdfs:///dir3 RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 hdfs:///dir4 count: Test for hdfs:// path - multiple directories without globbing with -q option -fs NAMENODE -mkdir hdfs:///dir1 -fs NAMENODE -mkdir hdfs:///dir2 -fs NAMENODE -mkdir hdfs:///dir3 -fs NAMENODE -mkdir hdfs:///dir4 -fs NAMENODE -setQuota 10 hdfs:///dir1 -fs NAMENODE -setSpaceQuota 1m hdfs:///dir1 -fs NAMENODE -setQuota 10 hdfs:///dir2 -fs NAMENODE -setSpaceQuota 1m hdfs:///dir2 -fs NAMENODE -setQuota 10 hdfs:///dir3 -fs NAMENODE -setSpaceQuota 1m hdfs:///dir3 -fs NAMENODE -setQuota 10 hdfs:///dir4 -fs NAMENODE -setSpaceQuota 1m hdfs:///dir4 -fs NAMENODE -count -q hdfs:///dir1 hdfs:///dir2 hdfs:///dir3 hdfs:///dir4 -fs NAMENODE -rm -r /dir* RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 hdfs:///dir1 RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 hdfs:///dir2 RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 hdfs:///dir3 RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 hdfs:///dir4 count: Test for file using Namenode's path -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -count NAMENODE/file1 -fs NAMENODE -rm NAMENODE/file1 RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 NAMENODE/file1 count: Test for directory using Namenode's path -fs NAMENODE -mkdir NAMENODE/dir1 -fs NAMENODE -count NAMENODE/dir1 -fs NAMENODE -rm -r NAMENODE/dir1 RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 NAMENODE/dir1 count: Test for Namenode's path - file/directory that does not exist -fs NAMENODE -count NAMENODE/file1 RegexpComparator count: `NAMENODE/file1': No such file or directory count: Test for Namenode's path - multiple files using globbing -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -touchz NAMENODE/file2 -fs NAMENODE -touchz NAMENODE/file3 -fs NAMENODE -touchz NAMENODE/file4 -fs NAMENODE -count NAMENODE/file* -fs NAMENODE -rm -r NAMENODE/file* RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 NAMENODE/file1 RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 NAMENODE/file2 RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 NAMENODE/file3 RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 NAMENODE/file4 count: Test for Namenode's path - multiple files without globbing -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -touchz NAMENODE/file2 -fs NAMENODE -touchz NAMENODE/file3 -fs NAMENODE -touchz NAMENODE/file4 -fs NAMENODE -count NAMENODE/file1 NAMENODE/file2 NAMENODE/file3 NAMENODE/file4 -fs NAMENODE -rm -r NAMENODE/file* RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 NAMENODE/file1 RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 NAMENODE/file2 RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 NAMENODE/file3 RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 NAMENODE/file4 count: Test for Namenode's path - multiple directories using globbing -fs NAMENODE -mkdir NAMENODE/dir1 -fs NAMENODE -mkdir NAMENODE/dir2 -fs NAMENODE -mkdir NAMENODE/dir3 -fs NAMENODE -mkdir NAMENODE/dir4 -fs NAMENODE -count NAMENODE/dir* -fs NAMENODE -rm -r NAMENODE/dir* RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 NAMENODE/dir1 RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 NAMENODE/dir2 RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 NAMENODE/dir3 RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 NAMENODE/dir4 count: Test for Namenode's path - multiple directories without globbing -fs NAMENODE -mkdir NAMENODE/dir1 -fs NAMENODE -mkdir NAMENODE/dir2 -fs NAMENODE -mkdir NAMENODE/dir3 -fs NAMENODE -mkdir NAMENODE/dir4 -fs NAMENODE -count NAMENODE/dir1 NAMENODE/dir2 NAMENODE/dir3 NAMENODE/dir4 -fs NAMENODE -rm -r NAMENODE/dir* RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 NAMENODE/dir1 RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 NAMENODE/dir2 RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 NAMENODE/dir3 RegexpComparator ( |\t)*1( |\t)*0( |\t)*0 NAMENODE/dir4 count: Test for file using Namenode's path with -q option -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -count -q NAMENODE/file1 -fs NAMENODE -rm NAMENODE/file1 RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 NAMENODE/file1 count: Test for directory using Namenode's path with -q option -fs NAMENODE -mkdir NAMENODE/dir1 -fs NAMENODE -setQuota 10 NAMENODE/dir1 -fs NAMENODE -setSpaceQuota 1m NAMENODE/dir1 -fs NAMENODE -count -q NAMENODE/dir1 -fs NAMENODE -rm -r NAMENODE/dir1 RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 NAMENODE/dir1 count: Test for Namenode's path - file/directory that does not exist with -q option -fs NAMENODE -count -q NAMENODE/file1 RegexpComparator count: `NAMENODE/file1': No such file or directory count: Test for Namenode's path - multiple files using globbing with -q option -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -touchz NAMENODE/file2 -fs NAMENODE -touchz NAMENODE/file3 -fs NAMENODE -touchz NAMENODE/file4 -fs NAMENODE -count -q NAMENODE/file* -fs NAMENODE -rm -r NAMENODE/file* RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 NAMENODE/file1 RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 NAMENODE/file2 RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 NAMENODE/file3 RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 NAMENODE/file4 count: Test for Namenode's path - multiple files without globbing with -q option -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -touchz NAMENODE/file2 -fs NAMENODE -touchz NAMENODE/file3 -fs NAMENODE -touchz NAMENODE/file4 -fs NAMENODE -count -q NAMENODE/file1 NAMENODE/file2 NAMENODE/file3 NAMENODE/file4 -fs NAMENODE -rm -r NAMENODE/file* RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 NAMENODE/file1 RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 NAMENODE/file2 RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 NAMENODE/file3 RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 NAMENODE/file4 count: Test for Namenode's path - multiple directories using globbing with -q option -fs NAMENODE -mkdir NAMENODE/dir1 -fs NAMENODE -mkdir NAMENODE/dir2 -fs NAMENODE -mkdir NAMENODE/dir3 -fs NAMENODE -mkdir NAMENODE/dir4 -fs NAMENODE -setQuota 10 NAMENODE/dir1 -fs NAMENODE -setSpaceQuota 1m NAMENODE/dir1 -fs NAMENODE -setQuota 10 NAMENODE/dir2 -fs NAMENODE -setSpaceQuota 1m NAMENODE/dir2 -fs NAMENODE -setQuota 10 NAMENODE/dir3 -fs NAMENODE -setSpaceQuota 1m NAMENODE/dir3 -fs NAMENODE -setQuota 10 NAMENODE/dir4 -fs NAMENODE -setSpaceQuota 1m NAMENODE/dir4 -fs NAMENODE -count -q NAMENODE/dir* -fs NAMENODE -rm -r NAMENODE/dir* RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 NAMENODE/dir1 RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 NAMENODE/dir2 RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 NAMENODE/dir3 RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 NAMENODE/dir4 count: Test for Namenode's path - multiple directories without globbing with -q option -fs NAMENODE -mkdir NAMENODE/dir1 -fs NAMENODE -mkdir NAMENODE/dir2 -fs NAMENODE -mkdir NAMENODE/dir3 -fs NAMENODE -mkdir NAMENODE/dir4 -fs NAMENODE -setQuota 10 NAMENODE/dir1 -fs NAMENODE -setSpaceQuota 1m NAMENODE/dir1 -fs NAMENODE -setQuota 10 NAMENODE/dir2 -fs NAMENODE -setSpaceQuota 1m NAMENODE/dir2 -fs NAMENODE -setQuota 10 NAMENODE/dir3 -fs NAMENODE -setSpaceQuota 1m NAMENODE/dir3 -fs NAMENODE -setQuota 10 NAMENODE/dir4 -fs NAMENODE -setSpaceQuota 1m NAMENODE/dir4 -fs NAMENODE -count -q NAMENODE/dir1 NAMENODE/dir2 NAMENODE/dir3 NAMENODE/dir4 -fs NAMENODE -rm -r NAMENODE/dir* RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 NAMENODE/dir1 RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 NAMENODE/dir2 RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 NAMENODE/dir3 RegexpComparator ( |\t)*10( |\t)*9( |\t)*1048576( |\t)*1048576( |\t)*1( |\t)*0( |\t)*0 NAMENODE/dir4 count: file using -h option -fs NAMENODE -mkdir -p dir -fs NAMENODE -put CLITEST_DATA/data15bytes file1 -fs NAMENODE -put CLITEST_DATA/data1k file2 -fs NAMENODE -count -h file1 file2 -fs NAMENODE -rm file1 file2 RegexpComparator ( |\t)*0( |\t)*1( |\t)*15 file1 RegexpComparator ( |\t)*0( |\t)*1( |\t)*1\.0 K file2 count: directory using -q and -h options -fs NAMENODE -mkdir /dir1 -fs NAMENODE -setQuota 10 /dir1 -fs NAMENODE -setSpaceQuota 1m /dir1 -fs NAMENODE -count -q -h /dir1 -fs NAMENODE -rm -r /dir1 RegexpComparator ( |\t)*10( |\t)*9( |\t)*1 M( |\t)*1 M( |\t)*1( |\t)*0( |\t)*0 /dir1 count: file using absolute path showing header record -fs NAMENODE -touchz /file1 -fs NAMENODE -count -v /file1 -fs NAMENODE -rm /file1 RegexpComparator ( |\t)*DIR_COUNT FILE_COUNT CONTENT_SIZE PATHNAME RegexpComparator ( |\t)*0( |\t)*1( |\t)*0 /file1 count: file using absolute path with -q option and showing header record -fs NAMENODE -touchz /file1 -fs NAMENODE -count -q -v /file1 -fs NAMENODE -rm /file1 RegexpComparator ( |\t)*QUOTA REM_QUOTA SPACE_QUOTA REM_SPACE_QUOTA DIR_COUNT FILE_COUNT CONTENT_SIZE PATHNAME RegexpComparator ( |\t)*none( |\t)*inf( |\t)*none( |\t)*inf( |\t)*0( |\t)*1( |\t)*0 /file1 chmod: change permission(octal mode) of file in absolute path -fs NAMENODE -touchz /file1 -fs NAMENODE -chmod 777 /file1 -fs NAMENODE -ls /file1 -fs NAMENODE -rm /file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file1 chmod: change permission(octal mode) of file in relative path -fs NAMENODE -mkdir -p dir -fs NAMENODE -touchz file1 -fs NAMENODE -chmod 666 file1 -fs NAMENODE -ls file1 -fs NAMENODE -rm file1 RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file1 chmod: change permission(octal mode) of directory in absolute path -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir0/dir1 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -touchz /dir0/dir1/file1 -fs NAMENODE -touchz /dir0/dir1/file2 -fs NAMENODE -chmod 777 /dir0/dir1 -fs NAMENODE -ls -R /dir0 -fs NAMENODE -rm -r /dir0 RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file0 chmod: change permission(octal mode) of directory in relative path -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -mkdir -p dir0/dir1 -fs NAMENODE -touchz dir0/file0 -fs NAMENODE -touchz dir0/dir1/file1 -fs NAMENODE -touchz dir0/dir1/file2 -fs NAMENODE -chmod 777 dir0/dir1 -fs NAMENODE -ls -R dir0 -fs NAMENODE -rm -r dir0 RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/file0 chmod: change permission(normal mode) of file in absolute path -fs NAMENODE -touchz /file1 -fs NAMENODE -chmod a+rw /file1 -fs NAMENODE -ls /file1 -fs NAMENODE -rm /file1 RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file1 chmod: change permission(normal mode) of file in relative path -fs NAMENODE -touchz file1 -fs NAMENODE -chmod a+rw file1 -fs NAMENODE -ls file1 -fs NAMENODE -rm file1 RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file1 chmod: change permission(normal mode) of directory in absolute path -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir0/dir1 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -touchz /dir0/dir1/file1 -fs NAMENODE -touchz /dir0/dir1/file2 -fs NAMENODE -chmod a+rwx /dir0/dir1 -fs NAMENODE -ls -R /dir0 -fs NAMENODE -rm -r /dir0 RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file0 chmod: change permission(normal mode) of directory in relative path -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -mkdir -p dir0/dir1 -fs NAMENODE -touchz dir0/file0 -fs NAMENODE -touchz dir0/dir1/file1 -fs NAMENODE -touchz dir0/dir1/file2 -fs NAMENODE -chmod a+rwx dir0/dir1 -fs NAMENODE -ls -R dir0 -fs NAMENODE -rm -r dir0 RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/file0 chmod: change permission(octal mode) of directory in absolute path recursively -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir0/dir1 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -touchz /dir0/dir1/file1 -fs NAMENODE -touchz /dir0/dir1/file2 -fs NAMENODE -chmod -R 777 /dir0/dir1 -fs NAMENODE -ls -R /dir0 -fs NAMENODE -rm -r /dir0 RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file0 chmod: change permission(octal mode) of directory in relative path recursively -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -mkdir -p dir0/dir1 -fs NAMENODE -touchz dir0/file0 -fs NAMENODE -touchz dir0/dir1/file1 -fs NAMENODE -touchz dir0/dir1/file2 -fs NAMENODE -chmod -R 777 dir0/dir1 -fs NAMENODE -ls -R dir0 -fs NAMENODE -rm -r dir0 RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/file0 chmod: change permission(normal mode) of directory in absolute path recursively -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir0/dir1 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -touchz /dir0/dir1/file1 -fs NAMENODE -touchz /dir0/dir1/file2 -fs NAMENODE -chmod -R a+rwx /dir0/dir1 -fs NAMENODE -ls -R /dir0 -fs NAMENODE -rm -r /dir0 RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file0 chmod: change permission(normal mode) of directory in relative path recursively -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -mkdir -p dir0/dir1 -fs NAMENODE -touchz dir0/file0 -fs NAMENODE -touchz dir0/dir1/file1 -fs NAMENODE -touchz dir0/dir1/file2 -fs NAMENODE -chmod -R a+rwx dir0/dir1 -fs NAMENODE -ls -R dir0 -fs NAMENODE -rm -r dir0 RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/file0 chmod: change permission(octal mode) of non existent file in absolute path -fs NAMENODE -chmod 777 /file1 -fs NAMENODE -rm /file1 RegexpComparator ^chmod: `/file1': No such file or directory chmod: change permission(octal mode) of non existent file in relative path -fs NAMENODE -chmod 666 file1 -fs NAMENODE -rm file1 RegexpComparator ^chmod: `file1': No such file or directory chmod: change permission(normal mode) of non existent file in absolute path -fs NAMENODE -chmod a+rw /file1 -fs NAMENODE -rm /file1 RegexpComparator ^chmod: `/file1': No such file or directory chmod: change permission(normal mode) of non existent file in relative path -fs NAMENODE -chmod a+rw file1 -fs NAMENODE -rm file1 RegexpComparator ^chmod: `file1': No such file or directory chmod: change permission(octal mode) of multiple files in absolute path using globbing -fs NAMENODE -touchz /file1 -fs NAMENODE -touchz /file2 -fs NAMENODE -touchz /file3 -fs NAMENODE -touchz /file4 -fs NAMENODE -chmod 777 /file* -fs NAMENODE -ls -R /file* -fs NAMENODE -rm /file* RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file3 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file4 chmod: change permission(octal mode) of multiple files in relative path using globbing -fs NAMENODE -touchz file1 -fs NAMENODE -touchz file2 -fs NAMENODE -touchz file3 -fs NAMENODE -touchz file4 -fs NAMENODE -chmod 777 file* -fs NAMENODE -ls -R file* -fs NAMENODE -rm file* RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file3 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file4 chmod: change permission(octal mode) of multiple directories in absolute path using globbing -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir0/dir1 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -touchz /dir0/dir1/file1 -fs NAMENODE -touchz /dir0/dir1/file2 -fs NAMENODE -mkdir /dir2 -fs NAMENODE -mkdir /dir2/dir1 -fs NAMENODE -touchz /dir2/file0 -fs NAMENODE -touchz /dir2/dir1/file1 -fs NAMENODE -touchz /dir2/dir1/file2 -fs NAMENODE -chmod 777 /dir* -fs NAMENODE -ls -R /dir* -fs NAMENODE -rm -r /dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/file0 chmod: change permission(octal mode) of multiple directories in relative path using globbing -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -mkdir -p dir0/dir1 -fs NAMENODE -touchz dir0/file0 -fs NAMENODE -touchz dir0/dir1/file1 -fs NAMENODE -touchz dir0/dir1/file2 -fs NAMENODE -mkdir -p dir2 -fs NAMENODE -mkdir -p dir2/dir1 -fs NAMENODE -touchz dir2/file0 -fs NAMENODE -touchz dir2/dir1/file1 -fs NAMENODE -touchz dir2/dir1/file2 -fs NAMENODE -chmod 777 dir* -fs NAMENODE -ls -R dir* -fs NAMENODE -rm -r dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/file0 chmod: change permission(octal mode) of multiple files in absolute path without globbing -fs NAMENODE -touchz /file1 -fs NAMENODE -touchz /file2 -fs NAMENODE -touchz /file3 -fs NAMENODE -touchz /file4 -fs NAMENODE -chmod 777 /file1 /file2 /file3 /file4 -fs NAMENODE -ls -R /file* -fs NAMENODE -rm /file* RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file3 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file4 chmod: change permission(octal mode) of multiple files in relative path without globbing -fs NAMENODE -touchz file1 -fs NAMENODE -touchz file2 -fs NAMENODE -touchz file3 -fs NAMENODE -touchz file4 -fs NAMENODE -chmod 777 file1 file2 file3 file4 -fs NAMENODE -ls -R file* -fs NAMENODE -rm file* RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file3 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file4 chmod: change permission(octal mode) of multiple directories in absolute path without globbing -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir0/dir1 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -touchz /dir0/dir1/file1 -fs NAMENODE -touchz /dir0/dir1/file2 -fs NAMENODE -mkdir /dir2 -fs NAMENODE -mkdir /dir2/dir1 -fs NAMENODE -touchz /dir2/file0 -fs NAMENODE -touchz /dir2/dir1/file1 -fs NAMENODE -touchz /dir2/dir1/file2 -fs NAMENODE -chmod 777 /dir0 /dir2 -fs NAMENODE -ls -R /dir* -fs NAMENODE -rm -r /dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/file0 chmod: change permission(octal mode) of multiple directories in relative path without globbing -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -mkdir -p dir0/dir1 -fs NAMENODE -touchz dir0/file0 -fs NAMENODE -touchz dir0/dir1/file1 -fs NAMENODE -touchz dir0/dir1/file2 -fs NAMENODE -mkdir -p dir2 -fs NAMENODE -mkdir -p dir2/dir1 -fs NAMENODE -touchz dir2/file0 -fs NAMENODE -touchz dir2/dir1/file1 -fs NAMENODE -touchz dir2/dir1/file2 -fs NAMENODE -chmod 777 dir0 dir2 -fs NAMENODE -ls -R dir* -fs NAMENODE -rm -r dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/file0 chmod: change permission(normal mode) of multiple files in absolute path using globbing -fs NAMENODE -touchz /file1 -fs NAMENODE -touchz /file2 -fs NAMENODE -touchz /file3 -fs NAMENODE -touchz /file4 -fs NAMENODE -chmod a+rw /file* -fs NAMENODE -ls -R /file* -fs NAMENODE -rm /file* RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file1 RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file2 RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file3 RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file4 chmod: change permission(normal mode) of multiple files in relative path using globbing -fs NAMENODE -touchz file1 -fs NAMENODE -touchz file2 -fs NAMENODE -touchz file3 -fs NAMENODE -touchz file4 -fs NAMENODE -chmod a+rw file* -fs NAMENODE -ls -R file* -fs NAMENODE -rm file* RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file1 RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file2 RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file3 RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file4 chmod: change permission(normal mode) of multiple directories in absolute path using globbing -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir0/dir1 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -touchz /dir0/dir1/file1 -fs NAMENODE -touchz /dir0/dir1/file2 -fs NAMENODE -mkdir /dir2 -fs NAMENODE -mkdir /dir2/dir1 -fs NAMENODE -touchz /dir2/file0 -fs NAMENODE -touchz /dir2/dir1/file1 -fs NAMENODE -touchz /dir2/dir1/file2 -fs NAMENODE -chmod a+rwx /dir* -fs NAMENODE -ls -R /dir* -fs NAMENODE -rm -r /dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/file0 chmod: change permission(normal mode) of multiple directories in relative path using globbing -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -mkdir -p dir0/dir1 -fs NAMENODE -touchz dir0/file0 -fs NAMENODE -touchz dir0/dir1/file1 -fs NAMENODE -touchz dir0/dir1/file2 -fs NAMENODE -mkdir -p dir2 -fs NAMENODE -mkdir -p dir2/dir1 -fs NAMENODE -touchz dir2/file0 -fs NAMENODE -touchz dir2/dir1/file1 -fs NAMENODE -touchz dir2/dir1/file2 -fs NAMENODE -chmod a+rwx dir* -fs NAMENODE -ls -R dir* -fs NAMENODE -rm -r dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/file0 chmod: change permission(normal mode) of multiple files in absolute path without globbing -fs NAMENODE -touchz /file1 -fs NAMENODE -touchz /file2 -fs NAMENODE -touchz /file3 -fs NAMENODE -touchz /file4 -fs NAMENODE -chmod a+rw /file1 /file2 /file3 /file4 -fs NAMENODE -ls -R /file* -fs NAMENODE -rm /file* RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file1 RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file2 RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file3 RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file4 chmod: change permission(normal mode) of multiple files in relative path without globbing -fs NAMENODE -touchz file1 -fs NAMENODE -touchz file2 -fs NAMENODE -touchz file3 -fs NAMENODE -touchz file4 -fs NAMENODE -chmod a+rw file1 file2 file3 file4 -fs NAMENODE -ls -R file* -fs NAMENODE -rm file* RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file1 RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file2 RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file3 RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file4 chmod: change permission(normal mode) of multiple directories in absolute path without globbing -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir0/dir1 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -touchz /dir0/dir1/file1 -fs NAMENODE -touchz /dir0/dir1/file2 -fs NAMENODE -mkdir /dir2 -fs NAMENODE -mkdir /dir2/dir1 -fs NAMENODE -touchz /dir2/file0 -fs NAMENODE -touchz /dir2/dir1/file1 -fs NAMENODE -touchz /dir2/dir1/file2 -fs NAMENODE -chmod a+rwx /dir0 /dir2 -fs NAMENODE -ls -R /dir* -fs NAMENODE -rm -r /dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/file0 chmod: change permission(normal mode) of multiple directories in relative path without globbing -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -mkdir -p dir0/dir1 -fs NAMENODE -touchz dir0/file0 -fs NAMENODE -touchz dir0/dir1/file1 -fs NAMENODE -touchz dir0/dir1/file2 -fs NAMENODE -mkdir -p dir2 -fs NAMENODE -mkdir -p dir2/dir1 -fs NAMENODE -touchz dir2/file0 -fs NAMENODE -touchz dir2/dir1/file1 -fs NAMENODE -touchz dir2/dir1/file2 -fs NAMENODE -chmod a+rwx dir0 dir2 -fs NAMENODE -ls -R dir* -fs NAMENODE -rm -r dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/file0 chmod: change permission(octal mode) of multiple directories in absolute path recursively using globbing -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir0/dir1 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -touchz /dir0/dir1/file1 -fs NAMENODE -touchz /dir0/dir1/file2 -fs NAMENODE -mkdir /dir2 -fs NAMENODE -mkdir /dir2/dir1 -fs NAMENODE -touchz /dir2/file0 -fs NAMENODE -touchz /dir2/dir1/file1 -fs NAMENODE -touchz /dir2/dir1/file2 -fs NAMENODE -chmod -R 777 /dir* -fs NAMENODE -ls -R /dir* -fs NAMENODE -rm -r /dir* RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file0 RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/file0 chmod: change permission(octal mode) of multiple directories in relative path recursively using globbing -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -mkdir -p dir0/dir1 -fs NAMENODE -touchz dir0/file0 -fs NAMENODE -touchz dir0/dir1/file1 -fs NAMENODE -touchz dir0/dir1/file2 -fs NAMENODE -mkdir -p dir2 -fs NAMENODE -mkdir -p dir2/dir1 -fs NAMENODE -touchz dir2/file0 -fs NAMENODE -touchz dir2/dir1/file1 -fs NAMENODE -touchz dir2/dir1/file2 -fs NAMENODE -chmod -R 777 dir* -fs NAMENODE -ls -R dir* -fs NAMENODE -rm -r dir* RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/file0 RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/file0 chmod: change permission(octal mode) of multiple directories in absolute path recursively without globbing -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir0/dir1 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -touchz /dir0/dir1/file1 -fs NAMENODE -touchz /dir0/dir1/file2 -fs NAMENODE -mkdir /dir2 -fs NAMENODE -mkdir /dir2/dir1 -fs NAMENODE -touchz /dir2/file0 -fs NAMENODE -touchz /dir2/dir1/file1 -fs NAMENODE -touchz /dir2/dir1/file2 -fs NAMENODE -chmod -R 777 /dir0 /dir2 -fs NAMENODE -ls -R /dir* -fs NAMENODE -rm -r /dir* RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file0 RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/file0 chmod: change permission(octal mode) of multiple directories in relative path recursively without globbing -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -mkdir -p dir0/dir1 -fs NAMENODE -touchz dir0/file0 -fs NAMENODE -touchz dir0/dir1/file1 -fs NAMENODE -touchz dir0/dir1/file2 -fs NAMENODE -mkdir -p dir2 -fs NAMENODE -mkdir -p dir2/dir1 -fs NAMENODE -touchz dir2/file0 -fs NAMENODE -touchz dir2/dir1/file1 -fs NAMENODE -touchz dir2/dir1/file2 -fs NAMENODE -chmod -R 777 dir0 dir2 -fs NAMENODE -ls -R dir* -fs NAMENODE -rm -r dir* RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/file0 RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/file0 chmod: change permission(normal mode) of multiple directories in absolute path recursively using globbing -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir0/dir1 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -touchz /dir0/dir1/file1 -fs NAMENODE -touchz /dir0/dir1/file2 -fs NAMENODE -mkdir /dir2 -fs NAMENODE -mkdir /dir2/dir1 -fs NAMENODE -touchz /dir2/file0 -fs NAMENODE -touchz /dir2/dir1/file1 -fs NAMENODE -touchz /dir2/dir1/file2 -fs NAMENODE -chmod -R a+rwx /dir* -fs NAMENODE -ls -R /dir* -fs NAMENODE -rm -r /dir* RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file0 RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/file0 chmod: change permission(normal mode) of multiple directories in relative path recursively using globbing -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -mkdir -p dir0/dir1 -fs NAMENODE -touchz dir0/file0 -fs NAMENODE -touchz dir0/dir1/file1 -fs NAMENODE -touchz dir0/dir1/file2 -fs NAMENODE -mkdir -p dir2 -fs NAMENODE -mkdir -p dir2/dir1 -fs NAMENODE -touchz dir2/file0 -fs NAMENODE -touchz dir2/dir1/file1 -fs NAMENODE -touchz dir2/dir1/file2 -fs NAMENODE -chmod -R a+rwx dir* -fs NAMENODE -ls -R dir* -fs NAMENODE -rm -r dir* RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/file0 RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/file0 chmod: change permission(normal mode) of multiple directories in absolute path recursively without globbing -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir0/dir1 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -touchz /dir0/dir1/file1 -fs NAMENODE -touchz /dir0/dir1/file2 -fs NAMENODE -mkdir /dir2 -fs NAMENODE -mkdir /dir2/dir1 -fs NAMENODE -touchz /dir2/file0 -fs NAMENODE -touchz /dir2/dir1/file1 -fs NAMENODE -touchz /dir2/dir1/file2 -fs NAMENODE -chmod -R a+rwx /dir0 /dir2 -fs NAMENODE -ls -R /dir* -fs NAMENODE -rm -r /dir* RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file0 RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/file0 chmod: change permission(normal mode) of multiple directories in relative path recursively without globbing -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -mkdir -p dir0/dir1 -fs NAMENODE -touchz dir0/file0 -fs NAMENODE -touchz dir0/dir1/file1 -fs NAMENODE -touchz dir0/dir1/file2 -fs NAMENODE -mkdir -p dir2 -fs NAMENODE -mkdir -p dir2/dir1 -fs NAMENODE -touchz dir2/file0 -fs NAMENODE -touchz dir2/dir1/file1 -fs NAMENODE -touchz dir2/dir1/file2 -fs NAMENODE -chmod -R a+rwx dir0 dir2 -fs NAMENODE -ls -R dir* -fs NAMENODE -rm -r dir* RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/file0 RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/file0 chmod: invalid value in octal mode of file in absolute path -fs NAMENODE -touchz /file1 -fs NAMENODE -chmod 999 /file1 -fs NAMENODE -rm /file1 RegexpComparator ^-chmod: chmod : mode '999' does not match the expected pattern. chmod: invalid value in octal mode of file in relative path -fs NAMENODE -touchz file1 -fs NAMENODE -chmod 999 file1 -fs NAMENODE -rm file1 RegexpComparator ^-chmod: chmod : mode '999' does not match the expected pattern. chmod: invalid value in normal mode of file in absolute path -fs NAMENODE -touchz /file1 -fs NAMENODE -chmod r+def /file1 -fs NAMENODE -rm /file1 RegexpComparator ^-chmod: chmod : mode \'r\+def\' does not match the expected pattern. chmod: invalid value in normal mode of file in relative path -fs NAMENODE -touchz file1 -fs NAMENODE -chmod r+def file1 -fs NAMENODE -rm file1 RegexpComparator ^-chmod: chmod : mode \'r\+def\' does not match the expected pattern. chmod: change permission(octal mode) of file in hdfs:// path -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -chmod 777 hdfs:///file1 -fs NAMENODE -ls hdfs:///file1 -fs NAMENODE -rm hdfs:///file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file1 chmod: change permission(octal mode) of directory in hdfs:// path -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir0/dir1 -fs NAMENODE -touchz hdfs:///dir0/file0 -fs NAMENODE -touchz hdfs:///dir0/dir1/file1 -fs NAMENODE -touchz hdfs:///dir0/dir1/file2 -fs NAMENODE -chmod 777 hdfs:///dir0/dir1 -fs NAMENODE -ls -R hdfs:///dir0 -fs NAMENODE -rm -r hdfs:///dir0 RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file0 chmod: change permission(normal mode) of file in hdfs:// path -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -chmod a+rw hdfs:///file1 -fs NAMENODE -ls hdfs:///file1 -fs NAMENODE -rm hdfs:///file1 RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file1 chmod: change permission(normal mode) of directory in hdfs:// path -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir0/dir1 -fs NAMENODE -touchz hdfs:///dir0/file0 -fs NAMENODE -touchz hdfs:///dir0/dir1/file1 -fs NAMENODE -touchz hdfs:///dir0/dir1/file2 -fs NAMENODE -chmod a+rwx hdfs:///dir0/dir1 -fs NAMENODE -ls -R hdfs:///dir0 -fs NAMENODE -rm -r hdfs:///dir0 RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file0 chmod: change permission(octal mode) of directory in hdfs:// path recursively -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir0/dir1 -fs NAMENODE -touchz hdfs:///dir0/file0 -fs NAMENODE -touchz hdfs:///dir0/dir1/file1 -fs NAMENODE -touchz hdfs:///dir0/dir1/file2 -fs NAMENODE -chmod -R 777 hdfs:///dir0/dir1 -fs NAMENODE -ls -R hdfs:///dir0 -fs NAMENODE -rm -r hdfs:///dir0 RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file0 chmod: change permission(normal mode) of directory in hdfs:// path recursively -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir0/dir1 -fs NAMENODE -touchz hdfs:///dir0/file0 -fs NAMENODE -touchz hdfs:///dir0/dir1/file1 -fs NAMENODE -touchz hdfs:///dir0/dir1/file2 -fs NAMENODE -chmod -R a+rwx hdfs:///dir0/dir1 -fs NAMENODE -ls -R hdfs:///dir0 -fs NAMENODE -rm -r hdfs:///dir0 RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file0 chmod: change permission(octal mode) of non existent file in hdfs:// path -fs NAMENODE -chmod 777 hdfs:///file1 -fs NAMENODE -rm hdfs:///file1 RegexpComparator ^chmod: `hdfs:///file1': No such file or directory chmod: change permission(normal mode) of non existent file in hdfs:// path -fs NAMENODE -chmod a+rw hdfs:///file1 -fs NAMENODE -rm hdfs:///file1 RegexpComparator ^chmod: `hdfs:///file1': No such file or directory chmod: change permission(octal mode) of multiple files in hdfs:// path using globbing -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -touchz hdfs:///file2 -fs NAMENODE -touchz hdfs:///file3 -fs NAMENODE -touchz hdfs:///file4 -fs NAMENODE -chmod 777 hdfs:///file* -fs NAMENODE -ls -R hdfs:///file* -fs NAMENODE -rm hdfs:///file* RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file3 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file4 chmod: change permission(octal mode) of multiple directories in hdfs:// path using globbing -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir0/dir1 -fs NAMENODE -touchz hdfs:///dir0/file0 -fs NAMENODE -touchz hdfs:///dir0/dir1/file1 -fs NAMENODE -touchz hdfs:///dir0/dir1/file2 -fs NAMENODE -mkdir hdfs:///dir2 -fs NAMENODE -mkdir hdfs:///dir2/dir1 -fs NAMENODE -touchz hdfs:///dir2/file0 -fs NAMENODE -touchz hdfs:///dir2/dir1/file1 -fs NAMENODE -touchz hdfs:///dir2/dir1/file2 -fs NAMENODE -chmod 777 hdfs:///dir* -fs NAMENODE -ls -R hdfs:///dir* -fs NAMENODE -rm -r hdfs:///dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/file0 chmod: change permission(octal mode) of multiple files in hdfs:// path without globbing -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -touchz hdfs:///file2 -fs NAMENODE -touchz hdfs:///file3 -fs NAMENODE -touchz hdfs:///file4 -fs NAMENODE -chmod 777 hdfs:///file1 hdfs:///file2 hdfs:///file3 hdfs:///file4 -fs NAMENODE -ls -R hdfs:///file* -fs NAMENODE -rm hdfs:///file* RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file3 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file4 chmod: change permission(octal mode) of multiple directories in hdfs:// path without globbing -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir0/dir1 -fs NAMENODE -touchz hdfs:///dir0/file0 -fs NAMENODE -touchz hdfs:///dir0/dir1/file1 -fs NAMENODE -touchz hdfs:///dir0/dir1/file2 -fs NAMENODE -mkdir hdfs:///dir2 -fs NAMENODE -mkdir hdfs:///dir2/dir1 -fs NAMENODE -touchz hdfs:///dir2/file0 -fs NAMENODE -touchz hdfs:///dir2/dir1/file1 -fs NAMENODE -touchz hdfs:///dir2/dir1/file2 -fs NAMENODE -chmod 777 hdfs:///dir0 hdfs:///dir2 -fs NAMENODE -ls -R hdfs:///dir* -fs NAMENODE -rm -r hdfs:///dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/file0 chmod: change permission(normal mode) of multiple files in hdfs:// path using globbing -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -touchz hdfs:///file2 -fs NAMENODE -touchz hdfs:///file3 -fs NAMENODE -touchz hdfs:///file4 -fs NAMENODE -chmod a+rw hdfs:///file* -fs NAMENODE -ls -R hdfs:///file* -fs NAMENODE -rm hdfs:///file* RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file1 RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file2 RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file3 RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file4 chmod: change permission(normal mode) of multiple directories in hdfs:// path using globbing -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir0/dir1 -fs NAMENODE -touchz hdfs:///dir0/file0 -fs NAMENODE -touchz hdfs:///dir0/dir1/file1 -fs NAMENODE -touchz hdfs:///dir0/dir1/file2 -fs NAMENODE -mkdir hdfs:///dir2 -fs NAMENODE -mkdir hdfs:///dir2/dir1 -fs NAMENODE -touchz hdfs:///dir2/file0 -fs NAMENODE -touchz hdfs:///dir2/dir1/file1 -fs NAMENODE -touchz hdfs:///dir2/dir1/file2 -fs NAMENODE -chmod a+rwx hdfs:///dir* -fs NAMENODE -ls -R hdfs:///dir* -fs NAMENODE -rm -r hdfs:///dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/file0 chmod: change permission(normal mode) of multiple files in hdfs:// path without globbing -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -touchz hdfs:///file2 -fs NAMENODE -touchz hdfs:///file3 -fs NAMENODE -touchz hdfs:///file4 -fs NAMENODE -chmod a+rw hdfs:///file1 hdfs:///file2 hdfs:///file3 hdfs:///file4 -fs NAMENODE -ls -R hdfs:///file* -fs NAMENODE -rm hdfs:///file* RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file1 RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file2 RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file3 RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file4 chmod: change permission(normal mode) of multiple directories in hdfs:// path without globbing -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir0/dir1 -fs NAMENODE -touchz hdfs:///dir0/file0 -fs NAMENODE -touchz hdfs:///dir0/dir1/file1 -fs NAMENODE -touchz hdfs:///dir0/dir1/file2 -fs NAMENODE -mkdir hdfs:///dir2 -fs NAMENODE -mkdir hdfs:///dir2/dir1 -fs NAMENODE -touchz hdfs:///dir2/file0 -fs NAMENODE -touchz hdfs:///dir2/dir1/file1 -fs NAMENODE -touchz hdfs:///dir2/dir1/file2 -fs NAMENODE -chmod a+rwx hdfs:///dir0 hdfs:///dir2 -fs NAMENODE -ls -R hdfs:///dir* -fs NAMENODE -rm -r hdfs:///dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/file0 chmod: change permission(octal mode) of multiple directories in hdfs:// path recursively using globbing -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir0/dir1 -fs NAMENODE -touchz hdfs:///dir0/file0 -fs NAMENODE -touchz hdfs:///dir0/dir1/file1 -fs NAMENODE -touchz hdfs:///dir0/dir1/file2 -fs NAMENODE -mkdir hdfs:///dir2 -fs NAMENODE -mkdir hdfs:///dir2/dir1 -fs NAMENODE -touchz hdfs:///dir2/file0 -fs NAMENODE -touchz hdfs:///dir2/dir1/file1 -fs NAMENODE -touchz hdfs:///dir2/dir1/file2 -fs NAMENODE -chmod -R 777 hdfs:///dir* -fs NAMENODE -ls -R hdfs:///dir* -fs NAMENODE -rm -r hdfs:///dir* RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file0 RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/file0 chmod: change permission(octal mode) of multiple directories in hdfs:// path recursively without globbing -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir0/dir1 -fs NAMENODE -touchz hdfs:///dir0/file0 -fs NAMENODE -touchz hdfs:///dir0/dir1/file1 -fs NAMENODE -touchz hdfs:///dir0/dir1/file2 -fs NAMENODE -mkdir hdfs:///dir2 -fs NAMENODE -mkdir hdfs:///dir2/dir1 -fs NAMENODE -touchz hdfs:///dir2/file0 -fs NAMENODE -touchz hdfs:///dir2/dir1/file1 -fs NAMENODE -touchz hdfs:///dir2/dir1/file2 -fs NAMENODE -chmod -R 777 hdfs:///dir0 hdfs:///dir2 -fs NAMENODE -ls -R hdfs:///dir* -fs NAMENODE -rm -r hdfs:///dir* RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file0 RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/file0 chmod: change permission(normal mode) of multiple directories in hdfs:// path recursively using globbing -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir0/dir1 -fs NAMENODE -touchz hdfs:///dir0/file0 -fs NAMENODE -touchz hdfs:///dir0/dir1/file1 -fs NAMENODE -touchz hdfs:///dir0/dir1/file2 -fs NAMENODE -mkdir hdfs:///dir2 -fs NAMENODE -mkdir hdfs:///dir2/dir1 -fs NAMENODE -touchz hdfs:///dir2/file0 -fs NAMENODE -touchz hdfs:///dir2/dir1/file1 -fs NAMENODE -touchz hdfs:///dir2/dir1/file2 -fs NAMENODE -chmod -R a+rwx hdfs:///dir* -fs NAMENODE -ls -R hdfs:///dir* -fs NAMENODE -rm -r hdfs:///dir* RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file0 RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/file0 chmod: change permission(normal mode) of multiple directories in hdfs:// path recursively without globbing -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir0/dir1 -fs NAMENODE -touchz hdfs:///dir0/file0 -fs NAMENODE -touchz hdfs:///dir0/dir1/file1 -fs NAMENODE -touchz hdfs:///dir0/dir1/file2 -fs NAMENODE -mkdir hdfs:///dir2 -fs NAMENODE -mkdir hdfs:///dir2/dir1 -fs NAMENODE -touchz hdfs:///dir2/file0 -fs NAMENODE -touchz hdfs:///dir2/dir1/file1 -fs NAMENODE -touchz hdfs:///dir2/dir1/file2 -fs NAMENODE -chmod -R a+rwx hdfs:///dir0 hdfs:///dir2 -fs NAMENODE -ls -R hdfs:///dir* -fs NAMENODE -rm -r hdfs:///dir* RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file0 RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/file0 chmod: invalid value in octal mode of file in hdfs:// path -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -chmod 999 hdfs:///file1 -fs NAMENODE -rm hdfs:///file1 RegexpComparator ^-chmod: chmod : mode '999' does not match the expected pattern. chmod: invalid value in normal mode of file in hdfs:// path -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -chmod rdef hdfs:///file1 -fs NAMENODE -rm hdfs:///file1 RegexpComparator ^-chmod: chmod : mode \'rdef\' does not match the expected pattern. chmod: change permission(octal mode) of file in Namenode's path -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -chmod 777 NAMENODE/file1 -fs NAMENODE -ls NAMENODE/file1 -fs NAMENODE -rm NAMENODE/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file1 chmod: change permission(octal mode) of directory in Namenode's path -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir0/dir1 -fs NAMENODE -touchz NAMENODE/dir0/file0 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file2 -fs NAMENODE -chmod 777 NAMENODE/dir0/dir1 -fs NAMENODE -ls -R NAMENODE/dir0 -fs NAMENODE -rm -r NAMENODE/dir0 RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file0 chmod: change permission(normal mode) of file in Namenode's path -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -chmod a+rw NAMENODE/file1 -fs NAMENODE -ls NAMENODE/file1 -fs NAMENODE -rm NAMENODE/file1 RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file1 chmod: change permission(normal mode) of directory in Namenode's path -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir0/dir1 -fs NAMENODE -touchz NAMENODE/dir0/file0 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file2 -fs NAMENODE -chmod a+rwx NAMENODE/dir0/dir1 -fs NAMENODE -ls -R NAMENODE/dir0 -fs NAMENODE -rm -r NAMENODE/dir0 RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file0 chmod: change permission(octal mode) of directory in Namenode's path recursively -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir0/dir1 -fs NAMENODE -touchz NAMENODE/dir0/file0 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file2 -fs NAMENODE -chmod -R 777 NAMENODE/dir0/dir1 -fs NAMENODE -ls -R NAMENODE/dir0 -fs NAMENODE -rm -r NAMENODE/dir0 RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file0 chmod: change permission(normal mode) of directory in Namenode's path recursively -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir0/dir1 -fs NAMENODE -touchz NAMENODE/dir0/file0 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file2 -fs NAMENODE -chmod -R a+rwx NAMENODE/dir0/dir1 -fs NAMENODE -ls -R NAMENODE/dir0 -fs NAMENODE -rm -r NAMENODE/dir0 RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file0 chmod: change permission(octal mode) of non existent file in Namenode's path -fs NAMENODE -chmod 777 NAMENODE/file1 -fs NAMENODE -rm NAMENODE/file1 RegexpComparator ^chmod: `NAMENODE/file1': No such file or directory chmod: change permission(normal mode) of non existent file in Namenode's path -fs NAMENODE -chmod a+rw NAMENODE/file1 -fs NAMENODE -rm NAMENODE/file1 RegexpComparator ^chmod: `NAMENODE/file1': No such file or directory chmod: change permission(octal mode) of multiple files in Namenode's path using globbing -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -touchz NAMENODE/file2 -fs NAMENODE -touchz NAMENODE/file3 -fs NAMENODE -touchz NAMENODE/file4 -fs NAMENODE -chmod 777 NAMENODE/file* -fs NAMENODE -ls -R NAMENODE/file* -fs NAMENODE -rm NAMENODE/file* RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file3 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file4 chmod: change permission(octal mode) of multiple directories in Namenode's path using globbing -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir0/dir1 -fs NAMENODE -touchz NAMENODE/dir0/file0 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file2 -fs NAMENODE -mkdir NAMENODE/dir2 -fs NAMENODE -mkdir NAMENODE/dir2/dir1 -fs NAMENODE -touchz NAMENODE/dir2/file0 -fs NAMENODE -touchz NAMENODE/dir2/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir2/dir1/file2 -fs NAMENODE -chmod 777 NAMENODE/dir* -fs NAMENODE -ls -R NAMENODE/dir* -fs NAMENODE -rm -r NAMENODE/dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/file0 chmod: change permission(octal mode) of multiple files in Namenode's path without globbing -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -touchz NAMENODE/file2 -fs NAMENODE -touchz NAMENODE/file3 -fs NAMENODE -touchz NAMENODE/file4 -fs NAMENODE -chmod 777 NAMENODE/file1 NAMENODE/file2 NAMENODE/file3 NAMENODE/file4 -fs NAMENODE -ls -R NAMENODE/file* -fs NAMENODE -rm NAMENODE/file* RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file3 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file4 chmod: change permission(octal mode) of multiple directories in Namenode's path without globbing -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir0/dir1 -fs NAMENODE -touchz NAMENODE/dir0/file0 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file2 -fs NAMENODE -mkdir NAMENODE/dir2 -fs NAMENODE -mkdir NAMENODE/dir2/dir1 -fs NAMENODE -touchz NAMENODE/dir2/file0 -fs NAMENODE -touchz NAMENODE/dir2/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir2/dir1/file2 -fs NAMENODE -chmod 777 NAMENODE/dir0 NAMENODE/dir2 -fs NAMENODE -ls -R NAMENODE/dir* -fs NAMENODE -rm -r NAMENODE/dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/file0 chmod: change permission(normal mode) of multiple files in Namenode's path using globbing -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -touchz NAMENODE/file2 -fs NAMENODE -touchz NAMENODE/file3 -fs NAMENODE -touchz NAMENODE/file4 -fs NAMENODE -chmod a+rw NAMENODE/file* -fs NAMENODE -ls -R NAMENODE/file* -fs NAMENODE -rm NAMENODE/file* RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file1 RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file2 RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file3 RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file4 chmod: change permission(normal mode) of multiple directories in Namenode's path using globbing -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir0/dir1 -fs NAMENODE -touchz NAMENODE/dir0/file0 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file2 -fs NAMENODE -mkdir NAMENODE/dir2 -fs NAMENODE -mkdir NAMENODE/dir2/dir1 -fs NAMENODE -touchz NAMENODE/dir2/file0 -fs NAMENODE -touchz NAMENODE/dir2/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir2/dir1/file2 -fs NAMENODE -chmod a+rwx NAMENODE/dir* -fs NAMENODE -ls -R NAMENODE/dir* -fs NAMENODE -rm -r NAMENODE/dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/file0 chmod: change permission(normal mode) of multiple files in Namenode's path without globbing -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -touchz NAMENODE/file2 -fs NAMENODE -touchz NAMENODE/file3 -fs NAMENODE -touchz NAMENODE/file4 -fs NAMENODE -chmod a+rw NAMENODE/file1 NAMENODE/file2 NAMENODE/file3 NAMENODE/file4 -fs NAMENODE -ls -R NAMENODE/file* -fs NAMENODE -rm NAMENODE/file* RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file1 RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file2 RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file3 RegexpComparator ^-rw-rw-rw-( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file4 chmod: change permission(normal mode) of multiple directories in Namenode's path without globbing -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir0/dir1 -fs NAMENODE -touchz NAMENODE/dir0/file0 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file2 -fs NAMENODE -mkdir NAMENODE/dir2 -fs NAMENODE -mkdir NAMENODE/dir2/dir1 -fs NAMENODE -touchz NAMENODE/dir2/file0 -fs NAMENODE -touchz NAMENODE/dir2/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir2/dir1/file2 -fs NAMENODE -chmod a+rwx NAMENODE/dir0 NAMENODE/dir2 -fs NAMENODE -ls -R NAMENODE/dir* -fs NAMENODE -rm -r NAMENODE/dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/file0 chmod: change permission(octal mode) of multiple directories in Namenode's path recursively using globbing -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir0/dir1 -fs NAMENODE -touchz NAMENODE/dir0/file0 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file2 -fs NAMENODE -mkdir NAMENODE/dir2 -fs NAMENODE -mkdir NAMENODE/dir2/dir1 -fs NAMENODE -touchz NAMENODE/dir2/file0 -fs NAMENODE -touchz NAMENODE/dir2/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir2/dir1/file2 -fs NAMENODE -chmod -R 777 NAMENODE/dir* -fs NAMENODE -ls -R NAMENODE/dir* -fs NAMENODE -rm -r NAMENODE/dir* RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file0 RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/file0 chmod: change permission(octal mode) of multiple directories in Namenode's path recursively without globbing -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir0/dir1 -fs NAMENODE -touchz NAMENODE/dir0/file0 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file2 -fs NAMENODE -mkdir NAMENODE/dir2 -fs NAMENODE -mkdir NAMENODE/dir2/dir1 -fs NAMENODE -touchz NAMENODE/dir2/file0 -fs NAMENODE -touchz NAMENODE/dir2/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir2/dir1/file2 -fs NAMENODE -chmod -R 777 NAMENODE/dir0 NAMENODE/dir2 -fs NAMENODE -ls -R NAMENODE/dir* -fs NAMENODE -rm -r NAMENODE/dir* RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file0 RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/file0 chmod: change permission(normal mode) of multiple directories in Namenode's path recursively using globbing -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir0/dir1 -fs NAMENODE -touchz NAMENODE/dir0/file0 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file2 -fs NAMENODE -mkdir NAMENODE/dir2 -fs NAMENODE -mkdir NAMENODE/dir2/dir1 -fs NAMENODE -touchz NAMENODE/dir2/file0 -fs NAMENODE -touchz NAMENODE/dir2/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir2/dir1/file2 -fs NAMENODE -chmod -R a+rwx NAMENODE/dir* -fs NAMENODE -ls -R NAMENODE/dir* -fs NAMENODE -rm -r NAMENODE/dir* RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file0 RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/file0 chmod: change permission(normal mode) of multiple directories in Namenode's path recursively without globbing -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir0/dir1 -fs NAMENODE -touchz NAMENODE/dir0/file0 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file2 -fs NAMENODE -mkdir NAMENODE/dir2 -fs NAMENODE -mkdir NAMENODE/dir2/dir1 -fs NAMENODE -touchz NAMENODE/dir2/file0 -fs NAMENODE -touchz NAMENODE/dir2/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir2/dir1/file2 -fs NAMENODE -chmod -R a+rwx NAMENODE/dir0 NAMENODE/dir2 -fs NAMENODE -ls -R NAMENODE/dir* -fs NAMENODE -rm -r NAMENODE/dir* RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file0 RegexpComparator ^drwxrwxrwx( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1/file1 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1/file2 RegexpComparator ^-rwxrwxrwx( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/file0 chmod: invalid value in octal mode of file in Namenode's path -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -chmod 999 NAMENODE/file1 -fs NAMENODE -rm NAMENODE/file1 RegexpComparator ^-chmod: chmod : mode '999' does not match the expected pattern. chmod: invalid value in normal mode of file in Namenode's path -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -chmod rdef NAMENODE/file1 -fs NAMENODE -rm NAMENODE/file1 RegexpComparator ^-chmod: chmod : mode \'rdef\' does not match the expected pattern. chown: change ownership of file in hdfs:// path -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -chown newowner:newgroup hdfs:///file1 -fs NAMENODE -ls hdfs:///file1 -fs NAMENODE -rm hdfs:///file1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file1 chown: change ownership of directory in hdfs:// path -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir0/dir1 -fs NAMENODE -touchz hdfs:///dir0/file0 -fs NAMENODE -touchz hdfs:///dir0/dir1/file1 -fs NAMENODE -touchz hdfs:///dir0/dir1/file2 -fs NAMENODE -chown newowner:newgroup hdfs:///dir0/dir1 -fs NAMENODE -ls -R hdfs:///dir0 -fs NAMENODE -rm -r hdfs:///dir0 RegexpComparator ^drwxr-xr-x( )*-( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file0 chown: change ownership of directory in hdfs:// path recursively -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir0/dir1 -fs NAMENODE -touchz hdfs:///dir0/file0 -fs NAMENODE -touchz hdfs:///dir0/dir1/file1 -fs NAMENODE -touchz hdfs:///dir0/dir1/file2 -fs NAMENODE -chown -R newowner:newgroup hdfs:///dir0/dir1 -fs NAMENODE -ls -R hdfs:///dir0 -fs NAMENODE -rm -r hdfs:///dir0 RegexpComparator ^drwxr-xr-x( )*-( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file0 chown: change ownership of non existent file in hdfs:// path -fs NAMENODE -chown newowner:newgroup hdfs:///file1 -fs NAMENODE -rm hdfs:///file1 RegexpComparator ^chown: `hdfs:///file1': No such file or directory chown: change ownership of multiple files in hdfs:// path using globbing -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -touchz hdfs:///file2 -fs NAMENODE -touchz hdfs:///file3 -fs NAMENODE -touchz hdfs:///file4 -fs NAMENODE -chown newowner:newgroup hdfs:///file* -fs NAMENODE -ls -R hdfs:///file* -fs NAMENODE -rm hdfs:///file* RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file2 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file3 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file4 chown: change ownership of multiple directories in hdfs:// path using globbing -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir0/dir1 -fs NAMENODE -touchz hdfs:///dir0/file0 -fs NAMENODE -touchz hdfs:///dir0/dir1/file1 -fs NAMENODE -touchz hdfs:///dir0/dir1/file2 -fs NAMENODE -mkdir hdfs:///dir2 -fs NAMENODE -mkdir hdfs:///dir2/dir1 -fs NAMENODE -touchz hdfs:///dir2/file0 -fs NAMENODE -touchz hdfs:///dir2/dir1/file1 -fs NAMENODE -touchz hdfs:///dir2/dir1/file2 -fs NAMENODE -chown newowner:newgroup hdfs:///dir* -fs NAMENODE -ls -R hdfs:///dir* -fs NAMENODE -rm -r hdfs:///dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/file0 chown: change ownership of multiple files in hdfs:// path without globbing -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -touchz hdfs:///file2 -fs NAMENODE -touchz hdfs:///file3 -fs NAMENODE -touchz hdfs:///file4 -fs NAMENODE -chown newowner:newgroup hdfs:///file1 hdfs:///file2 hdfs:///file3 hdfs:///file4 -fs NAMENODE -ls -R hdfs:///file* -fs NAMENODE -rm hdfs:///file* RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file2 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file3 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file4 chown: change ownership of multiple directories in hdfs:// path without globbing -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir0/dir1 -fs NAMENODE -touchz hdfs:///dir0/file0 -fs NAMENODE -touchz hdfs:///dir0/dir1/file1 -fs NAMENODE -touchz hdfs:///dir0/dir1/file2 -fs NAMENODE -mkdir hdfs:///dir2 -fs NAMENODE -mkdir hdfs:///dir2/dir1 -fs NAMENODE -touchz hdfs:///dir2/file0 -fs NAMENODE -touchz hdfs:///dir2/dir1/file1 -fs NAMENODE -touchz hdfs:///dir2/dir1/file2 -fs NAMENODE -chown newowner:newgroup hdfs:///dir0 hdfs:///dir2 -fs NAMENODE -ls -R hdfs:///dir* -fs NAMENODE -rm -r hdfs:///dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/file0 chown: change ownership of multiple directories recursively in hdfs:// path using globbing -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir0/dir1 -fs NAMENODE -touchz hdfs:///dir0/file0 -fs NAMENODE -touchz hdfs:///dir0/dir1/file1 -fs NAMENODE -touchz hdfs:///dir0/dir1/file2 -fs NAMENODE -mkdir hdfs:///dir2 -fs NAMENODE -mkdir hdfs:///dir2/dir1 -fs NAMENODE -touchz hdfs:///dir2/file0 -fs NAMENODE -touchz hdfs:///dir2/dir1/file1 -fs NAMENODE -touchz hdfs:///dir2/dir1/file2 -fs NAMENODE -chown -R newowner:newgroup hdfs:///dir* -fs NAMENODE -ls -R hdfs:///dir* -fs NAMENODE -rm -r hdfs:///dir* RegexpComparator ^drwxr-xr-x( )*-( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/file0 chown: change ownership of multiple directories recursively in hdfs:// path without globbing -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir0/dir1 -fs NAMENODE -touchz hdfs:///dir0/file0 -fs NAMENODE -touchz hdfs:///dir0/dir1/file1 -fs NAMENODE -touchz hdfs:///dir0/dir1/file2 -fs NAMENODE -mkdir hdfs:///dir2 -fs NAMENODE -mkdir hdfs:///dir2/dir1 -fs NAMENODE -touchz hdfs:///dir2/file0 -fs NAMENODE -touchz hdfs:///dir2/dir1/file1 -fs NAMENODE -touchz hdfs:///dir2/dir1/file2 -fs NAMENODE -chown -R newowner:newgroup hdfs:///dir0 hdfs:///dir2 -fs NAMENODE -ls -R hdfs:///dir* -fs NAMENODE -rm -r hdfs:///dir* RegexpComparator ^drwxr-xr-x( )*-( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/file0 chown: invalid option for owner of file in hdfs:// path -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -chown %:newgroup hdfs:///file1 -fs NAMENODE -rm hdfs:///file1 RegexpComparator ^-chown: '%:newgroup' does not match expected pattern for \[owner\]\[:group\]. chown: invalid option for group of file in hdfs:// path -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -chown newowner:% hdfs:///file1 -fs NAMENODE -rm hdfs:///file1 RegexpComparator ^-chown: 'newowner:%' does not match expected pattern for \[owner\]\[:group\]. chown: change ownership of file in absolute path -fs NAMENODE -touchz /file1 -fs NAMENODE -chown newowner:newgroup /file1 -fs NAMENODE -ls /file1 -fs NAMENODE -rm /file1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file1 chown: change ownership of file in relative path -fs NAMENODE -touchz file1 -fs NAMENODE -chown newowner:newgroup file1 -fs NAMENODE -ls file1 -fs NAMENODE -rm file1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file1 chown: change ownership of directory in absolute path -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir0/dir1 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -touchz /dir0/dir1/file1 -fs NAMENODE -touchz /dir0/dir1/file2 -fs NAMENODE -chown newowner:newgroup /dir0/dir1 -fs NAMENODE -ls -R /dir0 -fs NAMENODE -rm -r /dir0 RegexpComparator ^drwxr-xr-x( )*-( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file0 chown: change ownership of directory in relative path -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -mkdir -p dir0/dir1 -fs NAMENODE -touchz dir0/file0 -fs NAMENODE -touchz dir0/dir1/file1 -fs NAMENODE -touchz dir0/dir1/file2 -fs NAMENODE -chown newowner:newgroup dir0/dir1 -fs NAMENODE -ls -R dir0 -fs NAMENODE -rm -r dir0 RegexpComparator ^drwxr-xr-x( )*-( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/file0 chown: change ownership of directory in absolute path recursively -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir0/dir1 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -touchz /dir0/dir1/file1 -fs NAMENODE -touchz /dir0/dir1/file2 -fs NAMENODE -chown -R newowner:newgroup /dir0/dir1 -fs NAMENODE -ls -R /dir0 -fs NAMENODE -rm -r /dir0 RegexpComparator ^drwxr-xr-x( )*-( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file0 chown: change ownership of directory in relative path recursively -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -mkdir -p dir0/dir1 -fs NAMENODE -touchz dir0/file0 -fs NAMENODE -touchz dir0/dir1/file1 -fs NAMENODE -touchz dir0/dir1/file2 -fs NAMENODE -chown -R newowner:newgroup dir0/dir1 -fs NAMENODE -ls -R dir0 -fs NAMENODE -rm -r dir0 RegexpComparator ^drwxr-xr-x( )*-( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/file0 chown: change ownership of non existent file in absolute path -fs NAMENODE -chown newowner:newgroup /file1 -fs NAMENODE -rm /file1 RegexpComparator ^chown: `/file1': No such file or directory chown: change ownership of non existent file in relative path -fs NAMENODE -chown newowner:newgroup file1 -fs NAMENODE -rm file1 RegexpComparator ^chown: `file1': No such file or directory chown: change ownership of multiple files in absolute path using globbing -fs NAMENODE -touchz /file1 -fs NAMENODE -touchz /file2 -fs NAMENODE -touchz /file3 -fs NAMENODE -touchz /file4 -fs NAMENODE -chown newowner:newgroup /file* -fs NAMENODE -ls -R /file* -fs NAMENODE -rm /file* RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file2 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file3 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file4 chown: change ownership of multiple files in relative path using globbing -fs NAMENODE -touchz file1 -fs NAMENODE -touchz file2 -fs NAMENODE -touchz file3 -fs NAMENODE -touchz file4 -fs NAMENODE -chown newowner:newgroup file* -fs NAMENODE -ls -R file* -fs NAMENODE -rm file* RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file2 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file3 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file4 chown: change ownership of multiple directories in absolute path using globbing -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir0/dir1 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -touchz /dir0/dir1/file1 -fs NAMENODE -touchz /dir0/dir1/file2 -fs NAMENODE -mkdir /dir2 -fs NAMENODE -mkdir /dir2/dir1 -fs NAMENODE -touchz /dir2/file0 -fs NAMENODE -touchz /dir2/dir1/file1 -fs NAMENODE -touchz /dir2/dir1/file2 -fs NAMENODE -chown newowner:newgroup /dir* -fs NAMENODE -ls -R /dir* -fs NAMENODE -rm -r /dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/file0 chown: change ownership of multiple directories in relative path using globbing -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -mkdir -p dir0/dir1 -fs NAMENODE -touchz dir0/file0 -fs NAMENODE -touchz dir0/dir1/file1 -fs NAMENODE -touchz dir0/dir1/file2 -fs NAMENODE -mkdir -p dir2 -fs NAMENODE -mkdir -p dir2/dir1 -fs NAMENODE -touchz dir2/file0 -fs NAMENODE -touchz dir2/dir1/file1 -fs NAMENODE -touchz dir2/dir1/file2 -fs NAMENODE -chown newowner:newgroup dir* -fs NAMENODE -ls -R dir* -fs NAMENODE -rm -r dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/file0 chown: change ownership of multiple files in absolute path without globbing -fs NAMENODE -touchz /file1 -fs NAMENODE -touchz /file2 -fs NAMENODE -touchz /file3 -fs NAMENODE -touchz /file4 -fs NAMENODE -chown newowner:newgroup /file1 /file2 /file3 /file4 -fs NAMENODE -ls -R /file* -fs NAMENODE -rm /file* RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file2 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file3 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file4 chown: change ownership of multiple files in relative path without globbing -fs NAMENODE -touchz file1 -fs NAMENODE -touchz file2 -fs NAMENODE -touchz file3 -fs NAMENODE -touchz file4 -fs NAMENODE -chown newowner:newgroup file1 file2 file3 file4 -fs NAMENODE -ls -R file* -fs NAMENODE -rm file* RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file2 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file3 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file4 chown: change ownership of multiple directories in absolute path without globbing -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir0/dir1 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -touchz /dir0/dir1/file1 -fs NAMENODE -touchz /dir0/dir1/file2 -fs NAMENODE -mkdir /dir2 -fs NAMENODE -mkdir /dir2/dir1 -fs NAMENODE -touchz /dir2/file0 -fs NAMENODE -touchz /dir2/dir1/file1 -fs NAMENODE -touchz /dir2/dir1/file2 -fs NAMENODE -chown newowner:newgroup /dir0 /dir2 -fs NAMENODE -ls -R /dir* -fs NAMENODE -rm -r /dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/file0 chown: change ownership of multiple directories in relative path without globbing -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -mkdir -p dir0/dir1 -fs NAMENODE -touchz dir0/file0 -fs NAMENODE -touchz dir0/dir1/file1 -fs NAMENODE -touchz dir0/dir1/file2 -fs NAMENODE -mkdir -p dir2 -fs NAMENODE -mkdir -p dir2/dir1 -fs NAMENODE -touchz dir2/file0 -fs NAMENODE -touchz dir2/dir1/file1 -fs NAMENODE -touchz dir2/dir1/file2 -fs NAMENODE -chown newowner:newgroup dir0 dir2 -fs NAMENODE -ls -R dir* -fs NAMENODE -rm -r dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/file0 chown: change ownership of multiple directories recursively in absolute path using globbing -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir0/dir1 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -touchz /dir0/dir1/file1 -fs NAMENODE -touchz /dir0/dir1/file2 -fs NAMENODE -mkdir /dir2 -fs NAMENODE -mkdir /dir2/dir1 -fs NAMENODE -touchz /dir2/file0 -fs NAMENODE -touchz /dir2/dir1/file1 -fs NAMENODE -touchz /dir2/dir1/file2 -fs NAMENODE -chown -R newowner:newgroup /dir* -fs NAMENODE -ls -R /dir* -fs NAMENODE -rm -r /dir* RegexpComparator ^drwxr-xr-x( )*-( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/file0 chown: change ownership of multiple directories recursively in relative path using globbing -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -mkdir -p dir0/dir1 -fs NAMENODE -touchz dir0/file0 -fs NAMENODE -touchz dir0/dir1/file1 -fs NAMENODE -touchz dir0/dir1/file2 -fs NAMENODE -mkdir -p dir2 -fs NAMENODE -mkdir -p dir2/dir1 -fs NAMENODE -touchz dir2/file0 -fs NAMENODE -touchz dir2/dir1/file1 -fs NAMENODE -touchz dir2/dir1/file2 -fs NAMENODE -chown -R newowner:newgroup dir* -fs NAMENODE -ls -R dir* -fs NAMENODE -rm -r dir* RegexpComparator ^drwxr-xr-x( )*-( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/file0 chown: change ownership of multiple directories recursively in absolute path without globbing -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir0/dir1 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -touchz /dir0/dir1/file1 -fs NAMENODE -touchz /dir0/dir1/file2 -fs NAMENODE -mkdir /dir2 -fs NAMENODE -mkdir /dir2/dir1 -fs NAMENODE -touchz /dir2/file0 -fs NAMENODE -touchz /dir2/dir1/file1 -fs NAMENODE -touchz /dir2/dir1/file2 -fs NAMENODE -chown -R newowner:newgroup /dir0 /dir2 -fs NAMENODE -ls -R /dir* -fs NAMENODE -rm -r /dir* RegexpComparator ^drwxr-xr-x( )*-( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/file0 chown: change ownership of multiple directories recursively in relative path without globbing -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -mkdir -p dir0/dir1 -fs NAMENODE -touchz dir0/file0 -fs NAMENODE -touchz dir0/dir1/file1 -fs NAMENODE -touchz dir0/dir1/file2 -fs NAMENODE -mkdir -p dir2 -fs NAMENODE -mkdir -p dir2/dir1 -fs NAMENODE -touchz dir2/file0 -fs NAMENODE -touchz dir2/dir1/file1 -fs NAMENODE -touchz dir2/dir1/file2 -fs NAMENODE -chown -R newowner:newgroup dir0 dir2 -fs NAMENODE -ls -R dir* -fs NAMENODE -rm -r dir* RegexpComparator ^drwxr-xr-x( )*-( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/file0 chown: invalid option for owner of file in absolute path -fs NAMENODE -touchz /file1 -fs NAMENODE -chown %:newgroup /file1 -fs NAMENODE -rm /file1 RegexpComparator ^-chown: '%:newgroup' does not match expected pattern for \[owner\]\[:group\]. chown: invalid option for owner of file in relative path -fs NAMENODE -touchz file1 -fs NAMENODE -chown %:newgroup file1 -fs NAMENODE -rm file1 RegexpComparator ^-chown: '%:newgroup' does not match expected pattern for \[owner\]\[:group\]. chown: invalid option for group of file in absolute path -fs NAMENODE -touchz /file1 -fs NAMENODE -chown newowner:% /file1 -fs NAMENODE -rm /file1 RegexpComparator ^-chown: 'newowner:%' does not match expected pattern for \[owner\]\[:group\]. chown: invalid option for group of file in relative path -fs NAMENODE -touchz file1 -fs NAMENODE -chown newowner:% file1 -fs NAMENODE -rm file1 RegexpComparator ^-chown: 'newowner:%' does not match expected pattern for \[owner\]\[:group\]. chown: change ownership of file in Namenode's path -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -chown newowner:newgroup NAMENODE/file1 -fs NAMENODE -ls NAMENODE/file1 -fs NAMENODE -rm NAMENODE/file1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file1 chown: change ownership of directory in Namenode's path -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir0/dir1 -fs NAMENODE -touchz NAMENODE/dir0/file0 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file2 -fs NAMENODE -chown newowner:newgroup NAMENODE/dir0/dir1 -fs NAMENODE -ls -R NAMENODE/dir0 -fs NAMENODE -rm -r NAMENODE/dir0 RegexpComparator ^drwxr-xr-x( )*-( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file0 chown: change ownership of directory in Namenode's path recursively -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir0/dir1 -fs NAMENODE -touchz NAMENODE/dir0/file0 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file2 -fs NAMENODE -chown -R newowner:newgroup NAMENODE/dir0/dir1 -fs NAMENODE -ls -R NAMENODE/dir0 -fs NAMENODE -rm -r NAMENODE/dir0 RegexpComparator ^drwxr-xr-x( )*-( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file0 chown: change ownership of non existent file in Namenode's path -fs NAMENODE -chown newowner:newgroup NAMENODE/file1 -fs NAMENODE -rm NAMENODE/file1 RegexpComparator ^chown: `NAMENODE/file1': No such file or directory chown: change ownership of multiple files in Namenode's path using globbing -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -touchz NAMENODE/file2 -fs NAMENODE -touchz NAMENODE/file3 -fs NAMENODE -touchz NAMENODE/file4 -fs NAMENODE -chown newowner:newgroup NAMENODE/file* -fs NAMENODE -ls -R NAMENODE/file* -fs NAMENODE -rm NAMENODE/file* RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file2 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file3 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file4 chown: change ownership of multiple directories in Namenode's path using globbing -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir0/dir1 -fs NAMENODE -touchz NAMENODE/dir0/file0 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file2 -fs NAMENODE -mkdir NAMENODE/dir2 -fs NAMENODE -mkdir NAMENODE/dir2/dir1 -fs NAMENODE -touchz NAMENODE/dir2/file0 -fs NAMENODE -touchz NAMENODE/dir2/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir2/dir1/file2 -fs NAMENODE -chown newowner:newgroup NAMENODE/dir* -fs NAMENODE -ls -R NAMENODE/dir* -fs NAMENODE -rm -r NAMENODE/dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/file0 chown: change ownership of multiple files in Namenode's path without globbing -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -touchz NAMENODE/file2 -fs NAMENODE -touchz NAMENODE/file3 -fs NAMENODE -touchz NAMENODE/file4 -fs NAMENODE -chown newowner:newgroup NAMENODE/file1 NAMENODE/file2 NAMENODE/file3 NAMENODE/file4 -fs NAMENODE -ls -R NAMENODE/file* -fs NAMENODE -rm NAMENODE/file* RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file2 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file3 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file4 chown: change ownership of multiple directories in Namenode's path without globbing -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir0/dir1 -fs NAMENODE -touchz NAMENODE/dir0/file0 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file2 -fs NAMENODE -mkdir NAMENODE/dir2 -fs NAMENODE -mkdir NAMENODE/dir2/dir1 -fs NAMENODE -touchz NAMENODE/dir2/file0 -fs NAMENODE -touchz NAMENODE/dir2/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir2/dir1/file2 -fs NAMENODE -chown newowner:newgroup NAMENODE/dir0 NAMENODE/dir2 -fs NAMENODE -ls -R NAMENODE/dir* -fs NAMENODE -rm -r NAMENODE/dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/file0 chown: change ownership of multiple directories recursively in Namenode's path using globbing -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir0/dir1 -fs NAMENODE -touchz NAMENODE/dir0/file0 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file2 -fs NAMENODE -mkdir NAMENODE/dir2 -fs NAMENODE -mkdir NAMENODE/dir2/dir1 -fs NAMENODE -touchz NAMENODE/dir2/file0 -fs NAMENODE -touchz NAMENODE/dir2/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir2/dir1/file2 -fs NAMENODE -chown -R newowner:newgroup NAMENODE/dir* -fs NAMENODE -ls -R NAMENODE/dir* -fs NAMENODE -rm -r NAMENODE/dir* RegexpComparator ^drwxr-xr-x( )*-( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/file0 chown: change ownership of multiple directories recursively in Namenode's path without globbing -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir0/dir1 -fs NAMENODE -touchz NAMENODE/dir0/file0 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file2 -fs NAMENODE -mkdir NAMENODE/dir2 -fs NAMENODE -mkdir NAMENODE/dir2/dir1 -fs NAMENODE -touchz NAMENODE/dir2/file0 -fs NAMENODE -touchz NAMENODE/dir2/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir2/dir1/file2 -fs NAMENODE -chown -R newowner:newgroup NAMENODE/dir0 NAMENODE/dir2 -fs NAMENODE -ls -R NAMENODE/dir* -fs NAMENODE -rm -r NAMENODE/dir* RegexpComparator ^drwxr-xr-x( )*-( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*newowner( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/file0 chown: invalid option for owner of file in Namenode's path -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -chown %:newgroup NAMENODE/file1 -fs NAMENODE -rm NAMENODE/file1 RegexpComparator ^-chown: '%:newgroup' does not match expected pattern for \[owner\]\[:group\]. chown: invalid option for group of file in Namenode's path -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -chown newowner:% NAMENODE/file1 -fs NAMENODE -rm NAMENODE/file1 RegexpComparator ^-chown: 'newowner:%' does not match expected pattern for \[owner\]\[:group\]. chgrp: change group of file in absolute path -fs NAMENODE -touchz /file1 -fs NAMENODE -chgrp newgroup /file1 -fs NAMENODE -ls /file1 -fs NAMENODE -rm /file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file1 chgrp: change group of file in relative path -fs NAMENODE -touchz file1 -fs NAMENODE -chgrp newgroup file1 -fs NAMENODE -ls file1 -fs NAMENODE -rm file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file1 chgrp: change group of directory in absolute path -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir0/dir1 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -touchz /dir0/dir1/file1 -fs NAMENODE -touchz /dir0/dir1/file2 -fs NAMENODE -chgrp newgroup /dir0/dir1 -fs NAMENODE -ls -R /dir0 -fs NAMENODE -rm -r /dir0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file0 chgrp: change group of directory in relative path -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -mkdir -p dir0/dir1 -fs NAMENODE -touchz dir0/file0 -fs NAMENODE -touchz dir0/dir1/file1 -fs NAMENODE -touchz dir0/dir1/file2 -fs NAMENODE -chgrp newgroup dir0/dir1 -fs NAMENODE -ls -R dir0 -fs NAMENODE -rm -r dir0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/file0 chgrp: change group of directory in absolute path recursively -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir0/dir1 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -touchz /dir0/dir1/file1 -fs NAMENODE -touchz /dir0/dir1/file2 -fs NAMENODE -chgrp -R newgroup /dir0/dir1 -fs NAMENODE -ls -R /dir0 -fs NAMENODE -rm -r /dir0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file0 chgrp: change group of directory in relative path recursively -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -mkdir -p dir0/dir1 -fs NAMENODE -touchz dir0/file0 -fs NAMENODE -touchz dir0/dir1/file1 -fs NAMENODE -touchz dir0/dir1/file2 -fs NAMENODE -chgrp -R newgroup dir0/dir1 -fs NAMENODE -ls -R dir0 -fs NAMENODE -rm -r dir0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/file0 chgrp: change group of non existent file in absolute path -fs NAMENODE -chgrp newgroup /file1 -fs NAMENODE -rm /file1 RegexpComparator ^chgrp: `/file1': No such file or directory chgrp: change group of non existent file in relative path -fs NAMENODE -chgrp newgroup file1 -fs NAMENODE -rm file1 RegexpComparator ^chgrp: `file1': No such file or directory chgrp: change group of multiple files in absolute path using globbing -fs NAMENODE -touchz /file1 -fs NAMENODE -touchz /file2 -fs NAMENODE -touchz /file3 -fs NAMENODE -touchz /file4 -fs NAMENODE -chgrp newgroup /file* -fs NAMENODE -ls -R /file* -fs NAMENODE -rm /file* RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file3 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file4 chgrp: change group of multiple files in relative path using globbing -fs NAMENODE -touchz file1 -fs NAMENODE -touchz file2 -fs NAMENODE -touchz file3 -fs NAMENODE -touchz file4 -fs NAMENODE -chgrp newgroup file* -fs NAMENODE -ls -R file* -fs NAMENODE -rm file* RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file3 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file4 chgrp: change group of multiple directories in absolute path using globbing -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir0/dir1 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -touchz /dir0/dir1/file1 -fs NAMENODE -touchz /dir0/dir1/file2 -fs NAMENODE -mkdir /dir2 -fs NAMENODE -mkdir /dir2/dir1 -fs NAMENODE -touchz /dir2/file0 -fs NAMENODE -touchz /dir2/dir1/file1 -fs NAMENODE -touchz /dir2/dir1/file2 -fs NAMENODE -chgrp newgroup /dir* -fs NAMENODE -ls -R /dir* -fs NAMENODE -rm -r /dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/file0 chgrp: change group of multiple directories in relative path using globbing -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -mkdir -p dir0/dir1 -fs NAMENODE -touchz dir0/file0 -fs NAMENODE -touchz dir0/dir1/file1 -fs NAMENODE -touchz dir0/dir1/file2 -fs NAMENODE -mkdir -p dir2 -fs NAMENODE -mkdir -p dir2/dir1 -fs NAMENODE -touchz dir2/file0 -fs NAMENODE -touchz dir2/dir1/file1 -fs NAMENODE -touchz dir2/dir1/file2 -fs NAMENODE -chgrp newgroup dir* -fs NAMENODE -ls -R dir* -fs NAMENODE -rm -r dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/file0 chgrp: change of multiple files in absolute path without globbing -fs NAMENODE -touchz /file1 -fs NAMENODE -touchz /file2 -fs NAMENODE -touchz /file3 -fs NAMENODE -touchz /file4 -fs NAMENODE -chgrp newgroup /file1 /file2 /file3 /file4 -fs NAMENODE -ls -R /file* -fs NAMENODE -rm /file* RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file3 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/file4 chgrp: change group of multiple files in relative path without globbing -fs NAMENODE -touchz file1 -fs NAMENODE -touchz file2 -fs NAMENODE -touchz file3 -fs NAMENODE -touchz file4 -fs NAMENODE -chgrp newgroup file1 file2 file3 file4 -fs NAMENODE -ls -R file* -fs NAMENODE -rm file* RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file3 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*file4 chgrp: change group of multiple directories in absolute path without globbing -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir0/dir1 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -touchz /dir0/dir1/file1 -fs NAMENODE -touchz /dir0/dir1/file2 -fs NAMENODE -mkdir /dir2 -fs NAMENODE -mkdir /dir2/dir1 -fs NAMENODE -touchz /dir2/file0 -fs NAMENODE -touchz /dir2/dir1/file1 -fs NAMENODE -touchz /dir2/dir1/file2 -fs NAMENODE -chgrp newgroup /dir0 /dir2 -fs NAMENODE -ls -R /dir* -fs NAMENODE -rm -r /dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/file0 chgrp: change group of multiple directories in relative path without globbing -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -mkdir -p dir0/dir1 -fs NAMENODE -touchz dir0/file0 -fs NAMENODE -touchz dir0/dir1/file1 -fs NAMENODE -touchz dir0/dir1/file2 -fs NAMENODE -mkdir -p dir2 -fs NAMENODE -mkdir -p dir2/dir1 -fs NAMENODE -touchz dir2/file0 -fs NAMENODE -touchz dir2/dir1/file1 -fs NAMENODE -touchz dir2/dir1/file2 -fs NAMENODE -chgrp newgroup dir0 dir2 -fs NAMENODE -ls -R dir* -fs NAMENODE -rm -r dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/file0 chgrp: change group of multiple directories recursively in absolute path using globbing -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir0/dir1 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -touchz /dir0/dir1/file1 -fs NAMENODE -touchz /dir0/dir1/file2 -fs NAMENODE -mkdir /dir2 -fs NAMENODE -mkdir /dir2/dir1 -fs NAMENODE -touchz /dir2/file0 -fs NAMENODE -touchz /dir2/dir1/file1 -fs NAMENODE -touchz /dir2/dir1/file2 -fs NAMENODE -chgrp -R newgroup /dir* -fs NAMENODE -ls -R /dir* -fs NAMENODE -rm -r /dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/file0 chgrp: change group of multiple directories recursively in relative path using globbing -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -mkdir -p dir0/dir1 -fs NAMENODE -touchz dir0/file0 -fs NAMENODE -touchz dir0/dir1/file1 -fs NAMENODE -touchz dir0/dir1/file2 -fs NAMENODE -mkdir -p dir2 -fs NAMENODE -mkdir -p dir2/dir1 -fs NAMENODE -touchz dir2/file0 -fs NAMENODE -touchz dir2/dir1/file1 -fs NAMENODE -touchz dir2/dir1/file2 -fs NAMENODE -chgrp -R newgroup dir* -fs NAMENODE -ls -R dir* -fs NAMENODE -rm -r dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/file0 chgrp: change group of multiple directories recursively in absolute path without globbing -fs NAMENODE -mkdir /dir0 -fs NAMENODE -mkdir /dir0/dir1 -fs NAMENODE -touchz /dir0/file0 -fs NAMENODE -touchz /dir0/dir1/file1 -fs NAMENODE -touchz /dir0/dir1/file2 -fs NAMENODE -mkdir /dir2 -fs NAMENODE -mkdir /dir2/dir1 -fs NAMENODE -touchz /dir2/file0 -fs NAMENODE -touchz /dir2/dir1/file1 -fs NAMENODE -touchz /dir2/dir1/file2 -fs NAMENODE -chgrp -R newgroup /dir0 /dir2 -fs NAMENODE -ls -R /dir* -fs NAMENODE -rm -r /dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/dir2/file0 chgrp: change group of multiple directories recursively in relative path without globbing -fs NAMENODE -mkdir -p dir0 -fs NAMENODE -mkdir -p dir0/dir1 -fs NAMENODE -touchz dir0/file0 -fs NAMENODE -touchz dir0/dir1/file1 -fs NAMENODE -touchz dir0/dir1/file2 -fs NAMENODE -mkdir -p dir2 -fs NAMENODE -mkdir -p dir2/dir1 -fs NAMENODE -touchz dir2/file0 -fs NAMENODE -touchz dir2/dir1/file1 -fs NAMENODE -touchz dir2/dir1/file2 -fs NAMENODE -chgrp -R newgroup dir0 dir2 -fs NAMENODE -ls -R dir* -fs NAMENODE -rm -r dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*dir2/file0 chgrp: invalid option for group of file in absolute path -fs NAMENODE -touchz /file1 -fs NAMENODE -chgrp % /file1 -fs NAMENODE -rm /file1 RegexpComparator ^-chgrp: '%' does not match expected pattern for group chgrp: invalid option for group of file in relative path -fs NAMENODE -touchz file1 -fs NAMENODE -chgrp % file1 -fs NAMENODE -rm file1 RegexpComparator ^-chgrp: '%' does not match expected pattern for group chgrp: change group of file in hdfs:// path -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -chgrp newgroup hdfs:///file1 -fs NAMENODE -ls hdfs:///file1 -fs NAMENODE -rm hdfs:///file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file1 chgrp: change group of directory in hdfs:// path -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir0/dir1 -fs NAMENODE -touchz hdfs:///dir0/file0 -fs NAMENODE -touchz hdfs:///dir0/dir1/file1 -fs NAMENODE -touchz hdfs:///dir0/dir1/file2 -fs NAMENODE -chgrp newgroup hdfs:///dir0/dir1 -fs NAMENODE -ls -R hdfs:///dir0 -fs NAMENODE -rm -r hdfs:///dir0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file0 chgrp: change group of directory in hdfs:// path recursively -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir0/dir1 -fs NAMENODE -touchz hdfs:///dir0/file0 -fs NAMENODE -touchz hdfs:///dir0/dir1/file1 -fs NAMENODE -touchz hdfs:///dir0/dir1/file2 -fs NAMENODE -chgrp -R newgroup hdfs:///dir0/dir1 -fs NAMENODE -ls -R hdfs:///dir0 -fs NAMENODE -rm -r hdfs:///dir0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file0 chgrp: change group of non existent file in hdfs:// path -fs NAMENODE -chgrp newgroup hdfs:///file1 -fs NAMENODE -rm hdfs:///file1 RegexpComparator ^chgrp: `hdfs:///file1': No such file or directory chgrp: change group of multiple files in hdfs:// path using globbing -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -touchz hdfs:///file2 -fs NAMENODE -touchz hdfs:///file3 -fs NAMENODE -touchz hdfs:///file4 -fs NAMENODE -chgrp newgroup hdfs:///file* -fs NAMENODE -ls -R hdfs:///file* -fs NAMENODE -rm hdfs:///file* RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file3 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file4 chgrp: change group of multiple directories in hdfs:// path using globbing -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir0/dir1 -fs NAMENODE -touchz hdfs:///dir0/file0 -fs NAMENODE -touchz hdfs:///dir0/dir1/file1 -fs NAMENODE -touchz hdfs:///dir0/dir1/file2 -fs NAMENODE -mkdir hdfs:///dir2 -fs NAMENODE -mkdir hdfs:///dir2/dir1 -fs NAMENODE -touchz hdfs:///dir2/file0 -fs NAMENODE -touchz hdfs:///dir2/dir1/file1 -fs NAMENODE -touchz hdfs:///dir2/dir1/file2 -fs NAMENODE -chgrp newgroup hdfs:///dir* -fs NAMENODE -ls -R hdfs:///dir* -fs NAMENODE -rm -r hdfs:///dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/file0 chgrp: change of multiple files in hdfs:// path without globbing -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -touchz hdfs:///file2 -fs NAMENODE -touchz hdfs:///file3 -fs NAMENODE -touchz hdfs:///file4 -fs NAMENODE -chgrp newgroup hdfs:///file1 hdfs:///file2 hdfs:///file3 hdfs:///file4 -fs NAMENODE -ls -R hdfs:///file* -fs NAMENODE -rm hdfs:///file* RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file3 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///file4 chgrp: change group of multiple directories in hdfs:// path without globbing -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir0/dir1 -fs NAMENODE -touchz hdfs:///dir0/file0 -fs NAMENODE -touchz hdfs:///dir0/dir1/file1 -fs NAMENODE -touchz hdfs:///dir0/dir1/file2 -fs NAMENODE -mkdir hdfs:///dir2 -fs NAMENODE -mkdir hdfs:///dir2/dir1 -fs NAMENODE -touchz hdfs:///dir2/file0 -fs NAMENODE -touchz hdfs:///dir2/dir1/file1 -fs NAMENODE -touchz hdfs:///dir2/dir1/file2 -fs NAMENODE -chgrp newgroup hdfs:///dir0 hdfs:///dir2 -fs NAMENODE -ls -R hdfs:///dir* -fs NAMENODE -rm -r hdfs:///dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/file0 chgrp: change group of multiple directories recursively in hdfs:// path using globbing -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir0/dir1 -fs NAMENODE -touchz hdfs:///dir0/file0 -fs NAMENODE -touchz hdfs:///dir0/dir1/file1 -fs NAMENODE -touchz hdfs:///dir0/dir1/file2 -fs NAMENODE -mkdir hdfs:///dir2 -fs NAMENODE -mkdir hdfs:///dir2/dir1 -fs NAMENODE -touchz hdfs:///dir2/file0 -fs NAMENODE -touchz hdfs:///dir2/dir1/file1 -fs NAMENODE -touchz hdfs:///dir2/dir1/file2 -fs NAMENODE -chgrp -R newgroup hdfs:///dir* -fs NAMENODE -ls -R hdfs:///dir* -fs NAMENODE -rm -r hdfs:///dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/file0 chgrp: change group of multiple directories recursively in hdfs:// path without globbing -fs NAMENODE -mkdir hdfs:///dir0 -fs NAMENODE -mkdir hdfs:///dir0/dir1 -fs NAMENODE -touchz hdfs:///dir0/file0 -fs NAMENODE -touchz hdfs:///dir0/dir1/file1 -fs NAMENODE -touchz hdfs:///dir0/dir1/file2 -fs NAMENODE -mkdir hdfs:///dir2 -fs NAMENODE -mkdir hdfs:///dir2/dir1 -fs NAMENODE -touchz hdfs:///dir2/file0 -fs NAMENODE -touchz hdfs:///dir2/dir1/file1 -fs NAMENODE -touchz hdfs:///dir2/dir1/file2 -fs NAMENODE -chgrp -R newgroup hdfs:///dir0 hdfs:///dir2 -fs NAMENODE -ls -R hdfs:///dir* -fs NAMENODE -rm -r hdfs:///dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*hdfs:///dir2/file0 chgrp: invalid option for group of file in hdfs:// path -fs NAMENODE -touchz hdfs:///file1 -fs NAMENODE -chgrp % hdfs:///file1 -fs NAMENODE -rm hdfs:///file1 RegexpComparator ^-chgrp: '%' does not match expected pattern for group chgrp: change group of file in Namenode's path -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -chgrp newgroup NAMENODE/file1 -fs NAMENODE -ls NAMENODE/file1 -fs NAMENODE -rm NAMENODE/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file1 chgrp: change group of directory in Namenode's path -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir0/dir1 -fs NAMENODE -touchz NAMENODE/dir0/file0 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file2 -fs NAMENODE -chgrp newgroup NAMENODE/dir0/dir1 -fs NAMENODE -ls -R NAMENODE/dir0 -fs NAMENODE -rm -r NAMENODE/dir0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file0 chgrp: change group of directory in Namenode's path recursively -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir0/dir1 -fs NAMENODE -touchz NAMENODE/dir0/file0 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file2 -fs NAMENODE -chgrp -R newgroup NAMENODE/dir0/dir1 -fs NAMENODE -ls -R NAMENODE/dir0 -fs NAMENODE -rm -r NAMENODE/dir0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file0 chgrp: change group of non existent file in Namenode's path -fs NAMENODE -chgrp newgroup NAMENODE/file1 -fs NAMENODE -rm NAMENODE/file1 RegexpComparator ^chgrp: `NAMENODE/file1': No such file or directory chgrp: change group of multiple files in Namenode's path using globbing -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -touchz NAMENODE/file2 -fs NAMENODE -touchz NAMENODE/file3 -fs NAMENODE -touchz NAMENODE/file4 -fs NAMENODE -chgrp newgroup NAMENODE/file* -fs NAMENODE -ls -R NAMENODE/file* -fs NAMENODE -rm NAMENODE/file* RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file3 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file4 chgrp: change group of multiple directories in Namenode's path using globbing -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir0/dir1 -fs NAMENODE -touchz NAMENODE/dir0/file0 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file2 -fs NAMENODE -mkdir NAMENODE/dir2 -fs NAMENODE -mkdir NAMENODE/dir2/dir1 -fs NAMENODE -touchz NAMENODE/dir2/file0 -fs NAMENODE -touchz NAMENODE/dir2/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir2/dir1/file2 -fs NAMENODE -chgrp newgroup NAMENODE/dir* -fs NAMENODE -ls -R NAMENODE/dir* -fs NAMENODE -rm -r NAMENODE/dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/file0 chgrp: change of multiple files in Namenode's path without globbing -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -touchz NAMENODE/file2 -fs NAMENODE -touchz NAMENODE/file3 -fs NAMENODE -touchz NAMENODE/file4 -fs NAMENODE -chgrp newgroup NAMENODE/file1 NAMENODE/file2 NAMENODE/file3 NAMENODE/file4 -fs NAMENODE -ls -R NAMENODE/file* -fs NAMENODE -rm NAMENODE/file* RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file3 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/file4 chgrp: change group of multiple directories in Namenode's path without globbing -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir0/dir1 -fs NAMENODE -touchz NAMENODE/dir0/file0 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file2 -fs NAMENODE -mkdir NAMENODE/dir2 -fs NAMENODE -mkdir NAMENODE/dir2/dir1 -fs NAMENODE -touchz NAMENODE/dir2/file0 -fs NAMENODE -touchz NAMENODE/dir2/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir2/dir1/file2 -fs NAMENODE -chgrp newgroup NAMENODE/dir0 NAMENODE/dir2 -fs NAMENODE -ls -R NAMENODE/dir* -fs NAMENODE -rm -r NAMENODE/dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/file0 chgrp: change group of multiple directories recursively in Namenode's path using globbing -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir0/dir1 -fs NAMENODE -touchz NAMENODE/dir0/file0 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file2 -fs NAMENODE -mkdir NAMENODE/dir2 -fs NAMENODE -mkdir NAMENODE/dir2/dir1 -fs NAMENODE -touchz NAMENODE/dir2/file0 -fs NAMENODE -touchz NAMENODE/dir2/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir2/dir1/file2 -fs NAMENODE -chgrp -R newgroup NAMENODE/dir* -fs NAMENODE -ls -R NAMENODE/dir* -fs NAMENODE -rm -r NAMENODE/dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/file0 chgrp: change group of multiple directories recursively in Namenode's path without globbing -fs NAMENODE -mkdir NAMENODE/dir0 -fs NAMENODE -mkdir NAMENODE/dir0/dir1 -fs NAMENODE -touchz NAMENODE/dir0/file0 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir0/dir1/file2 -fs NAMENODE -mkdir NAMENODE/dir2 -fs NAMENODE -mkdir NAMENODE/dir2/dir1 -fs NAMENODE -touchz NAMENODE/dir2/file0 -fs NAMENODE -touchz NAMENODE/dir2/dir1/file1 -fs NAMENODE -touchz NAMENODE/dir2/dir1/file2 -fs NAMENODE -chgrp -R newgroup NAMENODE/dir0 NAMENODE/dir2 -fs NAMENODE -ls -R NAMENODE/dir* -fs NAMENODE -rm -r NAMENODE/dir* RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir0/file0 RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1/file1 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/dir1/file2 RegexpComparator ^-rw-r--r--( )*1( )*USERNAME( )*newgroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*NAMENODE/dir2/file0 chgrp: invalid option for group of file in Namenode's path -fs NAMENODE -touchz NAMENODE/file1 -fs NAMENODE -chgrp % NAMENODE/file1 -fs NAMENODE -rm NAMENODE/file1 RegexpComparator ^-chgrp: '%' does not match expected pattern for group help: help for dfsadmin report -fs NAMENODE -help report RegexpComparator ^-report \[-live\] \[-dead\] \[-decommissioning\]:(.)* RegexpComparator ^[ \t]*Reports basic filesystem information and statistics.( )* help: help for dfsadmin safemode -fs NAMENODE -help safemode RegexpComparator ^-safemode <enter\|leave\|get\|wait>:( |\t)*Safe mode maintenance command.( )* RegexpComparator ^( |\t)*Safe mode is a Namenode state in which it( )* RegexpComparator ^( |\t)*1.( )*does not accept changes to the name space \(read-only\)( )* RegexpComparator ^( |\t)*2.( )*does not replicate or delete blocks.( )* RegexpComparator ^( |\t)*Safe mode is entered automatically at Namenode startup, and( )* RegexpComparator ^( |\t)*leaves safe mode automatically when the configured minimum( )* RegexpComparator ^( |\t)*percentage of blocks satisfies the minimum replication( )* RegexpComparator ^( |\t)*condition. Safe mode can also be entered manually, but then( )* RegexpComparator ^( |\t)*it can only be turned off manually as well.( )* help: help for dfsadmin refreshNodes -fs NAMENODE -help refreshNodes RegexpComparator ^-refreshNodes:( |\t)*Updates the namenode with the set of datanodes allowed to connect to the namenode.( )* RegexpComparator ^( |\t)*Namenode re-reads datanode hostnames from the file defined by( )* RegexpComparator ^( |\t)*dfs.hosts, dfs.hosts.exclude configuration parameters.( )* RegexpComparator ^( |\t)*Hosts defined in dfs.hosts are the datanodes that are part of( )* RegexpComparator ^( |\t)*the cluster. If there are entries in dfs.hosts, only the hosts( )* RegexpComparator ^( |\t)*in it are allowed to register with the namenode.( )* RegexpComparator ^( |\t)*Entries in dfs.hosts.exclude are datanodes that need to be( )* RegexpComparator ^( |\t)*decommissioned. Datanodes complete decommissioning when ( )* RegexpComparator ^( |\t)*all the replicas from them are replicated to other datanodes.( )* RegexpComparator ^( |\t)*Decommissioned nodes are not automatically shutdown and( )* RegexpComparator ^( |\t)*are not chosen for writing new replicas.( )* help: help for dfsadmin finalizeUpgrade -fs NAMENODE -help finalizeUpgrade RegexpComparator ^-finalizeUpgrade:( )*Finalize upgrade of HDFS.( )* RegexpComparator ^( |\t)*Datanodes delete their previous version working directories,( )* RegexpComparator ^( |\t)*followed by Namenode doing the same.( )* RegexpComparator ^( |\t)*This completes the upgrade process.( )* help: help for dfsadmin metasave -fs NAMENODE -help metasave RegexpComparator ^-metasave <filename>:( |\t)*Save Namenode's primary data structures( )* RegexpComparator ^( |\t)*to <filename> in the directory specified by hadoop.log.dir property.( )* RegexpComparator ^( |\t)*<filename> will contain one line for each of the following( )* RegexpComparator ^( |\t)*1. Datanodes heart beating with Namenode( )* RegexpComparator ^( |\t)*2. Blocks waiting to be replicated( )* RegexpComparator ^( |\t)*3. Blocks currrently being replicated( )* RegexpComparator ^( |\t)*4. Blocks waiting to be deleted( )* help: help for dfsadmin setQuota -fs NAMENODE -help setQuota RegexpComparator ^-setQuota <quota> <dirname>...<dirname>: Set the quota <quota> for each directory <dirName>.( )* RegexpComparator ^( |\t)*The directory quota is a long integer that puts a hard limit( )* RegexpComparator ^( |\t)*on the number of names in the directory tree( )* RegexpComparator ^( |\t)*For each directory, attempt to set the quota. An error will be reported if( )* RegexpComparator ^( |\t)*1. N is not a positive integer, or( )* RegexpComparator ^( |\t)*2. User is not an administrator, or( )* RegexpComparator ^( |\t)*3. The directory does not exist or is a file.( )* help: help for dfsadmin clrQuota -fs NAMENODE -help clrQuota RegexpComparator ^-clrQuota <dirname>...<dirname>: Clear the quota for each directory <dirName>.( )* RegexpComparator ^( |\t)*For each directory, attempt to clear the quota. An error will be reported if( )* RegexpComparator ^( |\t)*1. the directory does not exist or is a file, or( )* RegexpComparator ^( |\t)*2. user is not an administrator.( )* RegexpComparator ^( |\t)*It does not fault if the directory has no quota.( )* help: help for dfsadmin setSpaceQuota -fs NAMENODE -help setSpaceQuota RegexpComparator ^-setSpaceQuota <quota> \[-storageType <storagetype>\] <dirname>...<dirname>: Set the space quota <quota> for each directory <dirName>.( )* RegexpComparator ^( |\t)*The space quota is a long integer that puts a hard limit( )* RegexpComparator ^( |\t)*on the total size of all the files under the directory tree.( )* RegexpComparator ^( |\t)*2. user is not an administrator, or( )* RegexpComparator ^( |\t)*3. the directory does not exist or is a file.( )* RegexpComparator ^( |\t)*The storage type specific quota is set when -storageType option is specified.( )* help: help for dfsadmin clrSpaceQuota -fs NAMENODE -help clrSpaceQuota RegexpComparator ^-clrSpaceQuota \[-storageType <storagetype>\] <dirname>...<dirname>: Clear the space quota for each directory <dirName>.( )* RegexpComparator ^( |\t)*For each directory, attempt to clear the quota. An error will be reported if( )* RegexpComparator ^( |\t)*1. the directory does not exist or is a file, or( )* RegexpComparator ^( |\t)*2. user is not an administrator.( )* RegexpComparator ^( |\t)*It does not fault if the directory has no quota.( )* RegexpComparator ^( |\t)*The storage type specific quota is cleared when -storageType option is specified.( )* help: help for dfsadmin refreshServiceAcl -fs NAMENODE -help refreshServiceAcl RegexpComparator ^-refreshServiceAcl: Reload the service-level authorization policy file( )* RegexpComparator ^( |\t)*Namenode will reload the authorization policy file.( )* help: help for dfsadmin help -fs NAMENODE -help help RegexpComparator ^-help \[cmd\]:( |\t)*Displays help for the given command or all commands if none( )* RegexpComparator ^( |\t)*is specified.( )* verifying error messages for quota commands - setting quota on a file -fs NAMENODE -mkdir /test -fs NAMENODE -touchz /test/file1 -fs NAMENODE -setQuota 1 /test/file1 -fs NAMENODE -setQuota 5 /test SubstringComparator setQuota: `/test/file1': Is not a directory verifying error messages for quota commands - setting quota on non-existing file -fs NAMENODE -setSpaceQuota 1g /test1 SubstringComparator setSpaceQuota: Directory does not exist: /test1 verifying error messages for quota commands - exceeding quota -fs NAMENODE -setQuota 3 /test -fs NAMENODE -touchz /test/file0 -fs NAMENODE -mkdir /test/test1 SubstringComparator The NameSpace quota (directories and files) of directory /test is exceeded verifying error messages for quota commands - setting not valid quota -fs NAMENODE -setQuota 0 /test SubstringComparator Invalid values for quota : 0 verifying error messages for quota commands - setting not valid space quota -fs NAMENODE -setSpaceQuota a5 /test SubstringComparator setSpaceQuota: "a5" is not a valid value for a quota. verifying error messages for quota commands - clearQuota on non existing file -fs NAMENODE -clrQuota /test1 -fs NAMENODE -rm -r /test SubstringComparator clrQuota: Directory does not exist: /test1 verifying error messages for quota commands - using globing -fs NAMENODE -mkdir /dir1 -fs NAMENODE -mkdir /dir2 -fs NAMENODE -mkdir /dir3 -fs NAMENODE -setSpaceQuota 1k /dir* -fs NAMENODE -put CLITEST_DATA/data15bytes /dir1/ -fs NAMENODE -rm -r /dir* RegexpComparator put: The DiskSpace quota of /dir1 is exceeded: quota = 1024 B = 1 KB but diskspace consumed = [0-9]+ B = [0-9.]+ [KMG]B* verifying error messages for quota commands - setting quota using globing -fs NAMENODE -mkdir /dir1 -fs NAMENODE -mkdir /dir2 -fs NAMENODE -mkdir /dir3 -fs NAMENODE -setQuota 1 /dir* -fs NAMENODE -mkdir /dir1/dir4 -fs NAMENODE -rm -r /dir* SubstringComparator mkdir: The NameSpace quota (directories and files) of directory /dir1 is exceeded: quota=1 file count=2 refreshServiceAcl: refreshing security authorization policy for namenode -fs NAMENODE -refreshServiceAcl RegexpComparator Refresh service acl successful(\n)* safemode: Test for enter - Namenode is not in safemode -fs NAMENODE -safemode enter -fs NAMENODE -safemode leave TokenComparator Safe mode is ON safemode: Test for enter - Namenode is already in safemode -fs NAMENODE -safemode enter -fs NAMENODE -safemode enter -fs NAMENODE -safemode leave TokenComparator Safe mode is ON safemode: Test for leave - Namenode is already in safemode -fs NAMENODE -safemode enter -fs NAMENODE -safemode leave TokenComparator Safe mode is OFF safemode: Test for leave - Namenode is not in safemode -fs NAMENODE -safemode leave TokenComparator Safe mode is OFF safemode: Test for get - Namenode is not in safemode -fs NAMENODE -safemode leave -fs NAMENODE -safemode get TokenComparator Safe mode is OFF safemode:Test for get - Namenode is already in safemode -fs NAMENODE -safemode enter -fs NAMENODE -safemode get -fs NAMENODE -safemode leave TokenComparator Safe mode is ON safemode: Test for wait - Namenode is not in safemode -fs NAMENODE -safemode leave -fs NAMENODE -safemode wait TokenComparator Safe mode is OFF safemode: Test for wait - Namenode is already in safemode -fs NAMENODE -safemode enter -fs NAMENODE -safemode wait & -fs NAMENODE -safemode leave TokenComparator Safe mode is OFF report: Displays the report about the Datanodes -fs NAMENODE -report RegexpComparator Configured Capacity: [0-9]+ \([0-9]+\.[0-9]+ [BKMGT]+\) RegexpComparator Present Capacity: [0-9]+ \([0-9\.]+ [BKMGT]+\) RegexpComparator DFS Remaining: [0-9]+ \([0-9\.]+ [BKMGT]+\) RegexpComparator DFS Used: [0-9]+ \([0-9\.]+ [BKMGT]+\) RegexpComparator DFS Used\%: [0-9\.]+% RegexpComparator Live datanodes \([0-9]+\): RegexpComparator Name: [0-9\.:]+ \([-.a-zA-z0-9\.]+\) RegexpComparator Hostname: [-.a-zA-z0-9\.]+ RegexpComparator Decommission Status : [a-zA-Z]+ RegexpComparator Non DFS Used: [0-9]+ \([0-9\.]+ [BKMGT]+\) RegexpComparator DFS Remaining%: [0-9\.]+% RegexpComparator Last contact: [a-zA-Z]+ [a-zA-Z]+ [0-9]+ [0-9:]+ [A-Z\-\+\:0-9]+ [0-9]+ TokenComparator Live datanodes saveNamespace: to save the namespace when safemode is ON -fs NAMENODE -safemode enter -fs NAMENODE -saveNamespace -fs NAMENODE -safemode leave RegexpComparator Save namespace successful(\n)* saveNamespace: to save the namespace when safemode is OFF -fs NAMENODE -safemode leave -fs NAMENODE -saveNamespace -fs NAMENODE -safemode leave TokenComparator saveNamespace: Safe mode should be turned ON in order to create namespace image. rollEdits: test rollEdits admin command -fs NAMENODE -rollEdits RegexpComparator New segment starts at txid \d+ refreshNodes: to refresh the nodes -fs NAMENODE -refreshNodes -fs NAMENODE -report RegexpComparator Configured Capacity: [0-9]+ \([0-9]+\.[0-9]+ [BKMGT]+\) RegexpComparator Present Capacity: [0-9]+ \([0-9\.]+ [BKMGT]+\) RegexpComparator DFS Remaining: [0-9]+ \([0-9\.]+ [BKMGT]+\) RegexpComparator DFS Used: [0-9]+ \([0-9\.]+ [BKMGT]+\) RegexpComparator DFS Used\%: [0-9\.]+% RegexpComparator Name: [0-9\.:]+ \([-.a-zA-z0-9\.]+\) RegexpComparator Hostname: [-.a-zA-z0-9\.]+ RegexpComparator Decommission Status : [a-zA-Z]+ RegexpComparator Non DFS Used: [0-9]+ \([0-9\.]+ [BKMGT]+\) RegexpComparator DFS Remaining%: [0-9\.]+% RegexpComparator Last contact: [a-zA-Z]+ [a-zA-Z]+ [0-9]+ [0-9:]+ [A-Z\-\+\:0-9]+ [0-9]+ TokenComparator Live datanodes metasave: to save metadata -fs NAMENODE -metasave metafile RegexpComparator Created metasave file metafile in the log directory of namenode hdfs:\/\/[-.a-zA-Z0-9\.:]+ clrSpaceQuota: Namenode is already in safemode -fs NAMENODE -mkdir test -fs NAMENODE -setSpaceQuota 15 test -fs NAMENODE -clrSpaceQuota test -fs NAMENODE -rm -r test ExactComparator printTopology: verifying that the topology map is what we expect -fs NAMENODE -printTopology RegexpAcrossOutputComparator ^Rack: \/rack1\s*127\.0\.0\.1:\d+\s\([-.a-zA-Z0-9]+\)\s*127\.0\.0\.1:\d+\s\([-.a-zA-Z0-9]+\) RegexpAcrossOutputComparator Rack: \/rack2\s*127\.0\.0\.1:\d+\s\([-.a-zA-Z0-9]+\)\s*127\.0\.0\.1:\d+\s\([-.a-zA-Z0-9]+\)\s*127\.0\.0\.1:\d+\s\([-.a-zA-Z0-9]+\) RegexpAcrossOutputComparator Rack: \/rack3\s*127\.0\.0\.1:\d+\s\([-.a-zA-Z0-9]+\) RegexpAcrossOutputComparator Rack: \/rack4\s*127\.0\.0\.1:\d+\s\([-.a-zA-Z0-9]+\)\s*127\.0\.0\.1:\d+\s\([-.a-zA-Z0-9]+\) appendToFile -fs NAMENODE -mkdir -p /user/USERNAME/dir1 -fs NAMENODE -touchz /user/USERNAME/dir1/file0 -fs NAMENODE -appendToFile CLITEST_DATA/data15bytes /user/USERNAME/dir1/file0 -fs NAMENODE -cat /user/USERNAME/dir1/file0 -fs NAMENODE -rm -r /user/USERNAME RegexpComparator 12345678901234 text -fs NAMENODE -mkdir -p /user/USERNAME/dir1 -fs NAMENODE -put CLITEST_DATA/data15bytes /user/USERNAME/dir1/file0 -fs NAMENODE -text /user/USERNAME/dir1/file0 -fs NAMENODE -rm -r /user/USERNAME/dir1 RegexpComparator 12345678901234 rmdir -fs NAMENODE -mkdir -p /user/USERNAME/dir1 -fs NAMENODE -rmdir /user/USERNAME/dir1 -fs NAMENODE -ls /user/USERNAME/ -fs NAMENODE -rm -r /user/USERNAME ExactComparator rmdir with ignore-fail-on-non-empty -fs NAMENODE -mkdir -p /user/USERNAME/dir1 -fs NAMENODE -put CLITEST_DATA/data15bytes /user/USERNAME/dir1/file0 -fs NAMENODE -rmdir --ignore-fail-on-non-empty /user/USERNAME/dir1 -fs NAMENODE -ls /user/USERNAME/ -fs NAMENODE -rm -r /user/USERNAME RegexpComparator Found 1 items RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/user/USERNAME/dir1 df -fs NAMENODE -mkdir -p /user/USERNAME/dir1 -fs NAMENODE -put CLITEST_DATA/data15bytes /user/USERNAME/dir1/file0 -fs NAMENODE -df /user/USERNAME -fs NAMENODE -rm -r /user/USERNAME RegexpComparator Filesystem( )*Size( )*Used( )*Available( )*Use%.* expunge -fs NAMENODE -expunge ExactComparator allowSnapshot -fs NAMENODE -mkdir -p /user/USERNAME/dir1 -fs NAMENODE -allowSnapshot /user/USERNAME/dir1 -fs NAMENODE -disallowSnapshot /user/USERNAME/dir1 -fs NAMENODE -rm -r /user/USERNAME RegexpComparator Allowing snaphot on /user/USERNAME/dir1 succeeded disallowSnapshot -fs NAMENODE -mkdir -p /user/USERNAME/dir1 -fs NAMENODE -allowSnapshot /user/USERNAME/dir1 -fs NAMENODE -disallowSnapshot /user/USERNAME/dir1 -fs NAMENODE -rm -r /user/USERNAME RegexpComparator Disallowing snaphot on /user/USERNAME/dir1 succeeded createSnapshot -fs NAMENODE -mkdir -p /user/USERNAME/dir1 -fs NAMENODE -allowSnapshot /user/USERNAME/dir1 -fs NAMENODE -createSnapshot /user/USERNAME/dir1 snapshot1 -fs NAMENODE -deleteSnapshot /user/USERNAME/dir1 snapshot1 -fs NAMENODE -disallowSnapshot /user/USERNAME/dir1 -fs NAMENODE -rm -r /user/USERNAME RegexpComparator Created snapshot /user/USERNAME/dir1/.snapshot/snapshot1 renameSnapshot -fs NAMENODE -mkdir -p /user/USERNAME/dir1 -fs NAMENODE -allowSnapshot /user/USERNAME/dir1 -fs NAMENODE -createSnapshot /user/USERNAME/dir1 snapshot1 -fs NAMENODE -renameSnapshot /user/USERNAME/dir1 snapshot1 snapshot2 -fs NAMENODE -ls /user/USERNAME/dir1/.snapshot -fs NAMENODE -deleteSnapshot /user/USERNAME/dir1 snapshot2 -fs NAMENODE -disallowSnapshot /user/USERNAME/dir1 -fs NAMENODE -rm -r /user/USERNAME RegexpComparator Found 1 items RegexpComparator ^drwxr-xr-x( )*-( )*USERNAME( )*supergroup( )*0( )*[0-9]{4,}-[0-9]{2,}-[0-9]{2,} [0-9]{2,}:[0-9]{2,}( )*/user/USERNAME/dir1/.snapshot/snapshot2 deleteSnapshot -fs NAMENODE -mkdir -p /user/USERNAME/dir1 -fs NAMENODE -allowSnapshot /user/USERNAME/dir1 -fs NAMENODE -createSnapshot /user/USERNAME/dir1 snapshot1 -fs NAMENODE -deleteSnapshot /user/USERNAME/dir1 snapshot1 -fs NAMENODE -ls /user/USERNAME/dir1/.snapshot -fs NAMENODE -disallowSnapshot /user/USERNAME/dir1 -fs NAMENODE -rm -r /user/USERNAME ExactComparator refreshUserToGroupsMappings -fs NAMENODE -refreshUserToGroupsMappings RegexpComparator Refresh user to groups mapping successful(\n)* refreshSuperUserGroupsConfiguration -fs NAMENODE -refreshSuperUserGroupsConfiguration RegexpComparator Refresh super user groups configuration successful(\n)* setQuota -fs NAMENODE -mkdir -p /user/USERNAME/dir1 -fs NAMENODE -setQuota 3 /user/USERNAME/dir1 -fs NAMENODE -count -q /user/USERNAME/dir1 -fs NAMENODE -rm -r /user/USERNAME RegexpComparator ( )*3.*/user/USERNAME/dir1 clrQuota -fs NAMENODE -mkdir -p /user/USERNAME/dir1 -fs NAMENODE -setQuota 3 /user/USERNAME/dir1 -fs NAMENODE -clrQuota /user/USERNAME/dir1 -fs NAMENODE -count -q /user/USERNAME/dir1 -fs NAMENODE -rm -r /user/USERNAME RegexpComparator ( )*none.*/user/USERNAME/dir1 setSpaceQuota -fs NAMENODE -mkdir -p /user/USERNAME/dir1 -fs NAMENODE -setSpaceQuota 1G /user/USERNAME/dir1 -fs NAMENODE -rm -r /user/USERNAME/dir1 ExactComparator setBalancerBandwidth -fs NAMENODE -setBalancerBandwidth 104857600 RegexpComparator Balancer bandwidth is set to 104857600(\n)* finalizeUpgrade -fs NAMENODE -finalizeUpgrade SubstringComparator Finalize upgrade successful moveFromLocal: moving non existent file(absolute path) -fs NAMENODE -mkdir -p /user/USERNAME/dir -fs NAMENODE -moveFromLocal /user/wrongdata /user/USERNAME/dir -fs NAMENODE -rm -r /user/USERNAME TokenComparator moveFromLocal: `/user/wrongdata': No such file or directory moveFromLocal: moving non existent file(relative path) -fs NAMENODE -mkdir -p /user/USERNAME/dir -fs NAMENODE -moveFromLocal wrongdata /user/USERNAME/dir -fs NAMENODE -rm -r /user/USERNAME TokenComparator moveFromLocal: `wrongdata': No such file or directory moveFromLocal: moving many files into an existing file -fs NAMENODE -cp CLITEST_DATA/data15bytes data15bytes -fs NAMENODE -cp CLITEST_DATA/data30bytes data30bytes -fs NAMENODE -mkdir -p /user/USERNAME/dir -fs NAMENODE -touchz /user/USERNAME/dir/file0 -fs NAMENODE -moveFromLocal data15bytes data30bytes /user/USERNAME/dir/file0 -fs NAMENODE -rm -r /user/USERNAME RegexpComparator moveFromLocal: `/user/USERNAME/dir/file0': Is not a directory moveFromLocal: moving many files into a non existent directory -fs NAMENODE -cp CLITEST_DATA/data15bytes data15bytes -fs NAMENODE -cp CLITEST_DATA/data30bytes data30bytes -fs NAMENODE -moveFromLocal data15bytes data30bytes /user/USERNAME/dir/wrongdir -fs NAMENODE -rm -r /user/USERNAME RegexpComparator ^moveFromLocal: `/user/USERNAME/dir/wrongdir': No such file or directory moveFromLocal: Test for hdfs:// path - moving non existent file -fs NAMENODE -mkdir -p /user/USERNAME/dir -fs NAMENODE -moveFromLocal /user/wrongdata hdfs:///user/USERNAME/dir/file -fs NAMENODE -rm -r hdfs:///* TokenComparator moveFromLocal: `/user/wrongdata': No such file or directory moveFromLocal: Test for hdfs:// path - moving many files into an existing file -fs NAMENODE -cp CLITEST_DATA/data15bytes data15bytes -fs NAMENODE -cp CLITEST_DATA/data30bytes data30bytes -fs NAMENODE -mkdir -p /user/USERNAME/dir -fs NAMENODE -touchz hdfs:///user/USERNAME/dir/file -fs NAMENODE -moveFromLocal data15bytes data30bytes hdfs:///user/USERNAME/dir/file -fs NAMENODE -rm -r hdfs:///* RegexpComparator moveFromLocal: `hdfs:///user/USERNAME/dir/file': Is not a directory moveFromLocal: Test for hdfs:// path - moving many files into a non existent directory -fs NAMENODE -cp CLITEST_DATA/data15bytes data15bytes -fs NAMENODE -cp CLITEST_DATA/data30bytes data30bytes -fs NAMENODE -moveFromLocal data15bytes data30bytes hdfs:///user/USERNAME/dir/wrongdir -fs NAMENODE -rm -r hdfs:///* RegexpComparator moveFromLocal: `hdfs:///user/USERNAME/dir/wrongdir': No such file or directory moveFromLocal: Test for Namenode's path - moving non existent file -fs NAMENODE -mkdir -p NAMENODE/user/USERNAME/dir -fs NAMENODE -moveFromLocal /user/wrongdata NAMENODE/user/USERNAME/dir -fs NAMENODE -rm -r NAMENODE/* TokenComparator moveFromLocal: `/user/wrongdata': No such file or directory moveFromLocal: Test for Namenode's path - moving many files into an existing file -fs NAMENODE -mkdir -p NAMENODE/user/USERNAME/dir -fs NAMENODE -touchz NAMENODE/user/USERNAME/dir/file0 -fs NAMENODE -cp CLITEST_DATA/data15bytes data15bytes -fs NAMENODE -cp CLITEST_DATA/data30bytes data30bytes -fs NAMENODE -moveFromLocal data15bytes data30bytes NAMENODE/user/USERNAME/dir/file0 -fs NAMENODE -rm -r NAMENODE/* RegexpComparator moveFromLocal: `hdfs://\w+[-.a-z0-9]*:[0-9]+/user/USERNAME/dir/file0': Is not a directory moveFromLocal: Test for Namenode's path - moving many files into a non existent directory -fs NAMENODE -mkdir -p NAMENODE/user/USERNAME -fs NAMENODE -touchz NAMENODE/user/USERNAME/dir/file0 -fs NAMENODE -cp CLITEST_DATA/data15bytes data15bytes -fs NAMENODE -cp CLITEST_DATA/data30bytes data30bytes -fs NAMENODE -moveFromLocal data15bytes data30bytes NAMENODE/user/USERNAME/wrongdir -fs NAMENODE -rm -r NAMENODE/* RegexpComparator moveFromLocal: `hdfs://\w+[-.a-z0-9]*:[0-9]+/user/USERNAME/wrongdir': No such file or directory Verifying chmod operation is not permitted in safemode -fs NAMENODE -mkdir /test -fs NAMENODE -touchz /test/file1 -fs NAMENODE -safemode enter -fs NAMENODE -chmod 777 /test/file1 -fs NAMENODE -safemode leave -fs NAMENODE -rm -r /test SubstringComparator Cannot set permission for /test/file1. Name node is in safe mode. Verifying chown operation is not permitted in safemode -fs NAMENODE -mkdir /test -fs NAMENODE -touchz /test/file1 -fs NAMENODE -safemode enter -fs NAMENODE -chown newgroup /test/file1 -fs NAMENODE -safemode leave -fs NAMENODE -rm -r /test SubstringComparator Cannot set owner for /test/file1. Name node is in safe mode. Verifying chgrp operation is not permitted in safemode -fs NAMENODE -mkdir /test -fs NAMENODE -touchz /test/file1 -fs NAMENODE -safemode enter -fs NAMENODE -chgrp newgroup /test/file1 -fs NAMENODE -safemode leave -fs NAMENODE -rm -r /test SubstringComparator Cannot set owner for /test/file1. Name node is in safe mode. Verifying setQuota operation is not permitted in safemode -fs NAMENODE -mkdir /test -fs NAMENODE -safemode enter -fs NAMENODE -setQuota 100 /test -fs NAMENODE -safemode leave -fs NAMENODE -rm -r /test SubstringComparator setQuota: Cannot set quota on /test. Name node is in safe mode. Verifying clrQuota operation is not permitted in safemode -fs NAMENODE -mkdir /test -fs NAMENODE -safemode enter -fs NAMENODE -clrQuota /test -fs NAMENODE -safemode leave -fs NAMENODE -rm -r /test SubstringComparator clrQuota: Cannot set quota on /test. Name node is in safe mode. Verifying setSpaceQuota operation is not permitted in safemode -fs NAMENODE -mkdir /test -fs NAMENODE -safemode enter -fs NAMENODE -setSpaceQuota 100 /test -fs NAMENODE -safemode leave -fs NAMENODE -rm -r /test SubstringComparator setSpaceQuota: Cannot set quota on /test. Name node is in safe mode. Verifying clrSpaceQuota operation is not permitted in safemode -fs NAMENODE -mkdir /test -fs NAMENODE -safemode enter -fs NAMENODE -clrSpaceQuota /test -fs NAMENODE -safemode leave -fs NAMENODE -rm -r /test SubstringComparator clrSpaceQuota: Cannot set quota on /test. Name node is in safe mode. find: default expression -fs NAMENODE -mkdir /donotfind -fs NAMENODE -mkdir donotfind -fs NAMENODE -mkdir /findtest -fs NAMENODE -mkdir /findtest/item1 -fs NAMENODE -mkdir /findtest/item1/item1a -fs NAMENODE -touchz /findtest/item1/item1a/item1aa -fs NAMENODE -put CLITEST_DATA/data60bytes /findtest/item1/item1b -fs NAMENODE -put CLITEST_DATA/data60bytes /findtest/item2 -fs NAMENODE -mkdir /findtest/item3 -fs NAMENODE -mkdir /findtest/item4 -fs NAMENODE -mkdir /findtest/item4/item4a -fs NAMENODE -put CLITEST_DATA/data120bytes /findtest/item4/item4b -fs NAMENODE -put CLITEST_DATA/data1k /findtest/item5 -fs NAMENODE -find /findtest -fs NAMENODE -rm -r /donotfind -fs NAMENODE -rm -r donotfind -fs NAMENODE -rm -r /findtest RegexpAcrossOutputComparator ^/findtest /findtest/item1 /findtest/item1/item1a /findtest/item1/item1a/item1aa /findtest/item1/item1b /findtest/item2 /findtest/item3 /findtest/item4 /findtest/item4/item4a /findtest/item4/item4b /findtest/item5 $ find: -print -fs NAMENODE -mkdir /donotfind -fs NAMENODE -mkdir donotfind -fs NAMENODE -mkdir /findtest -fs NAMENODE -mkdir /findtest/item1 -fs NAMENODE -mkdir /findtest/item1/item1a -fs NAMENODE -touchz /findtest/item1/item1a/item1aa -fs NAMENODE -put CLITEST_DATA/data60bytes /findtest/item1/item1b -fs NAMENODE -put CLITEST_DATA/data60bytes /findtest/item2 -fs NAMENODE -mkdir /findtest/item3 -fs NAMENODE -mkdir /findtest/item4 -fs NAMENODE -mkdir /findtest/item4/item4a -fs NAMENODE -put CLITEST_DATA/data120bytes /findtest/item4/item4b -fs NAMENODE -put CLITEST_DATA/data1k /findtest/item5 -fs NAMENODE -find /findtest -print -fs NAMENODE -rm -r /donotfind -fs NAMENODE -rm -r donotfind -fs NAMENODE -rm -r /findtest RegexpAcrossOutputComparator ^/findtest /findtest/item1 /findtest/item1/item1a /findtest/item1/item1a/item1aa /findtest/item1/item1b /findtest/item2 /findtest/item3 /findtest/item4 /findtest/item4/item4a /findtest/item4/item4b /findtest/item5 $ find: -print (relative path) -fs NAMENODE -mkdir /donotfind -fs NAMENODE -mkdir -p donotfind -fs NAMENODE -mkdir -p findtest -fs NAMENODE -mkdir -p findtest/item1 -fs NAMENODE -mkdir -p findtest/item1/item1a -fs NAMENODE -touchz findtest/item1/item1a/item1aa -fs NAMENODE -put CLITEST_DATA/data60bytes findtest/item1/item1b -fs NAMENODE -put CLITEST_DATA/data60bytes findtest/item2 -fs NAMENODE -mkdir -p findtest/item3 -fs NAMENODE -mkdir -p findtest/item4 -fs NAMENODE -mkdir -p findtest/item4/item4a -fs NAMENODE -put CLITEST_DATA/data120bytes findtest/item4/item4b -fs NAMENODE -put CLITEST_DATA/data1k findtest/item5 -fs NAMENODE -find findtest -print -fs NAMENODE -rm -r /donotfind -fs NAMENODE -rm -r donotfind -fs NAMENODE -rm -r findtest RegexpAcrossOutputComparator ^findtest findtest/item1 findtest/item1/item1a findtest/item1/item1a/item1aa findtest/item1/item1b findtest/item2 findtest/item3 findtest/item4 findtest/item4/item4a findtest/item4/item4b findtest/item5 $ find: -print (cwd) -fs NAMENODE -mkdir /donotfind -fs NAMENODE -mkdir findtest -fs NAMENODE -mkdir findtest/item1 -fs NAMENODE -mkdir findtest/item1/item1a -fs NAMENODE -touchz findtest/item1/item1a/item1aa -fs NAMENODE -put CLITEST_DATA/data60bytes findtest/item1/item1b -fs NAMENODE -put CLITEST_DATA/data60bytes findtest/item2 -fs NAMENODE -mkdir findtest/item3 -fs NAMENODE -mkdir findtest/item4 -fs NAMENODE -mkdir findtest/item4/item4a -fs NAMENODE -put CLITEST_DATA/data120bytes findtest/item4/item4b -fs NAMENODE -put CLITEST_DATA/data1k findtest/item5 -fs NAMENODE -find -print -fs NAMENODE -rm -r findtest -fs NAMENODE -rm -r /donotfind RegexpAcrossOutputComparator ^. findtest findtest/item1 findtest/item1/item1a findtest/item1/item1a/item1aa findtest/item1/item1b findtest/item2 findtest/item3 findtest/item4 findtest/item4/item4a findtest/item4/item4b findtest/item5 $ find: -name -fs NAMENODE -mkdir /findtest -fs NAMENODE -mkdir /findtest/item1 -fs NAMENODE -mkdir /findtest/item1/item1a -fs NAMENODE -touchz /findtest/item1/item1a/item1aa -fs NAMENODE -put CLITEST_DATA/data60bytes /findtest/item1/item1b -fs NAMENODE -put CLITEST_DATA/data60bytes /findtest/item2 -fs NAMENODE -mkdir /findtest/item3 -fs NAMENODE -mkdir /findtest/item4 -fs NAMENODE -mkdir /findtest/item4/item4a -fs NAMENODE -put CLITEST_DATA/data120bytes /findtest/item4/item4b -fs NAMENODE -put CLITEST_DATA/data1k /findtest/item5 -fs NAMENODE -find /findtest -name item*a -fs NAMENODE -rm -r /findtest RegexpAcrossOutputComparator ^/findtest/item1/item1a /findtest/item1/item1a/item1aa /findtest/item4/item4a $ find: -iname -fs NAMENODE -mkdir /findtest -fs NAMENODE -mkdir /findtest/item1 -fs NAMENODE -mkdir /findtest/item1/item1a -fs NAMENODE -touchz /findtest/item1/item1a/item1aa -fs NAMENODE -put CLITEST_DATA/data60bytes /findtest/item1/item1b -fs NAMENODE -put CLITEST_DATA/data60bytes /findtest/item2 -fs NAMENODE -mkdir /findtest/item3 -fs NAMENODE -mkdir /findtest/item4 -fs NAMENODE -mkdir /findtest/item4/item4a -fs NAMENODE -put CLITEST_DATA/data120bytes /findtest/item4/item4b -fs NAMENODE -put CLITEST_DATA/data1k /findtest/item5 -fs NAMENODE -find /findtest -iname ITEM*a -fs NAMENODE -rm -r /findtest RegexpAcrossOutputComparator ^/findtest/item1/item1a /findtest/item1/item1a/item1aa /findtest/item4/item4a $ truncate to 5 bytes after waiting for block recovery to complete -fs NAMENODE -mkdir -p /user/USERNAME/dir0 -fs NAMENODE -put CLITEST_DATA/data120bytes /user/USERNAME/dir0 -fs NAMENODE -truncate -w 5 /user/USERNAME/dir0/data120bytes -fs NAMENODE -cat /user/USERNAME/dir0/data120bytes -fs NAMENODE -rm -r /user/USERNAME/dir0 RegexpComparator 12345 truncate to greater length than length of file -fs NAMENODE -mkdir /user/USERNAME/dir0 -fs NAMENODE -put CLITEST_DATA/data15bytes /user/USERNAME/dir0 -fs NAMENODE -truncate -w 50 /user/USERNAME/dir0/data15bytes -fs NAMENODE -cat /user/USERNAME/dir0/data15bytes -fs NAMENODE -rm -r /user/USERNAME/dir0 RegexpComparator 12345678901234