Capturing the result(print statements) of SP_UPDATESTATS I am creating a SQL Server Job to update the statistics once in a week. To create a Job I came up with the below code. 

USE msdb ;  
GO  
EXEC dbo.sp_add_job  
    @job_name = N'Weekly Statistics Update',
    @category_name=N'Database Maintenance' ;  
GO  
EXEC sp_add_jobstep  
    @job_name = N'Weekly Statistics Update',  
    @step_name = N'Updating statistics',  
    @subsystem = N'TSQL',  
    @command = N'DECLARE @SQL VARCHAR(8000)
DECLARE @DB_NAME SYSNAME
DECLARE STATSUPDATE_CURSOR CURSOR FORWARD_ONLY STATIC FOR
  SELECT Quotename([name])
  FROM   master.sys.databases
  WHERE  [name] NOT IN ( ''master'', ''tempdb'', ''model'', ''msdb'',
                         ''ReportServer'', ''ReportServerTempDB'' )

OPEN STATSUPDATE_CURSOR

FETCH NEXT FROM STATSUPDATE_CURSOR INTO @DB_NAME

WHILE @@FETCH_STATUS = 0
  BEGIN
      SELECT @SQL = Concat(''EXEC '', @DB_NAME, ''.sys.sp_updatestats;'')
                    + Char(13)

      --PRINT @SQL

      EXEC @SQL
      FETCH NEXT FROM STATSUPDATE_CURSOR INTO @DB_NAME
  END

CLOSE STATSUPDATE_CURSOR

DEALLOCATE STATSUPDATE_CURSOR ',   
    @retry_attempts = 3, 
    @retry_interval = 5 ; --5 minutes 
GO  
EXEC dbo.sp_add_schedule  
    @schedule_name = N'Weekly Once statistics update',  
    @freq_type = 8,  -- Weekly
    @freq_interval = 1, --Sunday
    @active_start_time = '1:00:00' ;  -- Sunday Morning 1 AM


USE msdb ;  

GO  
EXEC sp_attach_schedule  
   @job_name = N'Weekly Statistics Update',  
   @schedule_name = N'Weekly Once statistics update';  
GO  
EXEC dbo.sp_add_jobserver  
    @job_name = N'Weekly Statistics Update';  
GO  


Is there a way to capture the result(Print Statements) of sp_executesql inside the Job. I searched for the answer but no luck is there a way to do this?
I would use the free Ola Hallengren maintenance solution to update statistics.

See Example C from the above link, where you can update the statistics in all user databases via: -

C. Update statistics on all user databases

EXECUTE dbo.IndexOptimize
@Databases = 'USER_DATABASES',
@FragmentationLow = NULL,
@FragmentationMedium = NULL,
@FragmentationHigh = NULL,
@UpdateStatistics = 'ALL'


You can also edit this for your needs to only do an individual database.

The logging you require can be achieved by specifiying the LogToTable parameter.

As a final point. Remember you don't have to update statistics if you are rebuilding your indexes. Rebuiliding your indexes during your weekly maintenance window might be your best option. Again you can use the Ola Hallengren solution for this.